2

如何在与数据库中的另一个表相关的单元格中使用数组,例如?

用户表:

Name | languages_id
Anas | 1,2,3

语言表:

id | language
1  | English
2  | Arabic

是工作还是不工作?!你知道我可以在 yii 中使用什么来做到这一点吗?

4

2 回答 2

3

不要这样做。

不要将多个项目存储为逗号分隔的列,这真的很糟糕

您应该通过在和表之间创建一个多对多表的新表来保持表规范化。像这样的事情:UsersLanguagesUSERSLanguages

Users

  • UserId,
  • UserName,
  • ... 其他详情。

Languages

  • LanguageId,
  • LanguageName,
  • ...

UserLanguages

  • UserId外键引用Users(UserId)
  • LanguageId国外的关键参考资料Languages(LanguageId)
于 2012-12-11T11:46:05.713 回答
1

您可以使用FIND_IN_SET.

SELECT
    name,
    language
FROM
    users
INNER JOIN
    languages ON FIND_IN_SET(languages.id, languages_id) != 0
GROUP BY
    name

尽管 Mahmoud Gamal 的评论可能是更好的解决方法。

于 2012-12-11T11:27:36.423 回答