我有users
表
users
--------------------------------
| user_id | name | hobbies_id |
--------------------------------
| 1 | John | 1,5,8,12,21 |
| ...
,hobby_id
列,其中包含其他表格中的爱好ID - hobbies
:
hobbies
-----------------------
| hobby_id | name |
-----------------------
| 1 | painting |
| 2 | movies |
| ...
| 8 | football |
| ...
现在我想选择users
表中的用户hobbies_id
,即 1,8,21
上面的te table中的 John 与我的情况相符,应该包含在输出中。
如果有可能我想通过单一查询来完成它。 无论如何我一开始就坚持了......
SELECT * FROM users WHERE ??
答案 0 :(得分:0)
评论太长了。
通过添加每个名称和爱好一行的联结表来修复数据结构。以下是您不在字符串中存储多个ID的一些原因:
了解一些名为“联结表”的内容。