【发布时间】:2017-04-19 09:38:23
【问题描述】:
我有两张桌子
[系列]
--------------
ID | ART
--------------
1 | sculptor
2 | painter
3 | writer
-----------
[艺术家]
--------------
NAME | ART_IDs
--------------
john | 1
jack | 1,2
jill | 2,1
jeff | 3,1
我想这样加入:
SELECT se.art, ar.name as artist
FROM series AS se
JOIN artists AS ar ON FIND_IN_SET(se.id , ar.art_ids) > 0
我得到的只是第一个值:
[结果]
-------------------
ART | ARTISTS
-------------------
sculptor | john
sculptor | jack
painter | jill
writer | jeff
代替:
[结果]
----------------------------
ART | ARTISTS
----------------------------
sculptor | john
sculptor,painter | jack
painter,sculptor | jill
writer,sculptor | jeff
【问题讨论】:
-
将值存储为 csv 是非常糟糕的数据库设计。考虑表格的规范化
-
认真考虑上面 Jens 的评论。
-
或者这是一个更好的副本:stackoverflow.com/questions/16923471/…
标签: mysql