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
您应该为每个 CatID 使用不同的实体。然后你可以连接两个表并使用 Group Concat.
试试这个:
Select *
from mytable_items a
join mytable_categories b on a.id = b.id
这将加入数据并正确显示。
我想做一些新的东西(对我来说这是新的,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
您应该为每个 CatID 使用不同的实体。然后你可以连接两个表并使用 Group Concat.
试试这个:
Select *
from mytable_items a
join mytable_categories b on a.id = b.id
这将加入数据并正确显示。