嗨,我想知道是否有可能做下面的事情。很明显,我试图在phpMyAdmin中运行这个,但有一个错误。也许有另一种方法来写这个查询。MySQL加入列a IN(列b)
SELECT * FROM eat_eat_restaurants AS r
INNER JOIN eat_eat_cuisines AS c ON c.cuisine_id IN (r.cuisine_ids)
除此之外,还可以在一行中选择餐厅名称和美食吗?例如
r_name c_names
Marco's Italian, Modern European
我的2个表看起来像这样:
TABLE EAT_EAT_RESTAURANTS
id r_name cuisine_ids
1 Marco's 1,2
2 Beldaro 3,4
3 Benny's 1,3
TABLE EAT_EAT_CUISINES
id c_name
1 Italian
2 Modern European
3 Greek
4 Belgian
5 ...
你出手自己的脚通过存储`cuisine_ids`为逗号分隔的列表。你应该使用一个中间表来处理这种m-to-n关系。对于你的问题的第二部分:GROUP_CONCAT() – Mchl 2011-02-01 15:42:53
谢谢,不是在脚下拍摄,仍然在设计过程中 - 很高兴有你们的帮助,在stackoverflow! – Martin 2011-02-01 16:12:24