MySQL - 加入逗号分隔字段

时间:2015-05-05 12:37:02

标签: mysql join left-join inner-join

我想做一些新的东西(对我来说它是新的,不知道。我只是一个MySQL初学者),我没有找到解决方案。

我在我的数据库中输入了这些条目:

mytable_items
id | title | catids
1 | test | 32,14

mytable_categories
id | title
32 | Test-Category
14 | Another-Category

现在我想加入这个东西:显示mytable_items的所有数据 - 同时显示指定的类别(标题)

结果应为:

1 | test | Test-Category, Another-Category

我该如何解决这个问题?

提前多多感谢: - )

3 个答案:

答案 0 :(得分:0)

试试这个:

SELECT  m.id,group_concat(mc.title)
FROM    mytable_items m
JOIN    mytable_categories mc
ON      FIND_IN_SET(mc.id,m.catids)
group by
    m.id

<强> SQL FIDDLE DEMO

答案 1 :(得分:-1)

您应该为每个CatID使用不同的实体。然后,您可以加入两个表并使用Group Concat

答案 2 :(得分:-1)

试试这个:

Select * 
from mytable_items a
join mytable_categories b on a.id = b.id

这将加入数据并正确显示。