MySQL - 加入 comma-separated 字段

MySQL - Join on comma-separated field

我想做一些新的东西(对我来说这是新的,bc。我只是一个 MySQL-beginner)但我没有找到解决方案。

我的数据库中有这些条目:

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

我该如何解决这个问题?

提前致谢:-)

试试这个:

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

您应该为每个 CatID 使用不同的实体。然后你可以连接两个表并使用 Group Concat.

试试这个:

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

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