SELECT l.id, GROUP_CONCAT(p.`pname`) uid, l.tidFROM user_task_list l
LEFT JOIN user_phone p ON FIND_IN_SET(p.`id`,l.`uid`)
GROUP BY(l.`id`)
p.pname
代表要显示的字段名
FIND_IN_SET(p.id
,l.uid
)
p.id
是被连接表的主键
l.uid
是连接表的外键的集合(是下图的这种格式)
GROUP BY(l.id
)
根据连接表的主键进行分组
效果图(uid)
FIND_IN_SET在查询时的使用
查询出user_task_list表中uid中含有1的数据
SELECT t.* FROM user_task_list t
LEFT JOIN user_phone p ON t.`uid`=p.`id`
WHERE FIND_IN_SET(1,t.uid)
FIND_IN_SET(1,t.uid) 中的第一个值 1 代表要查询的 user_phone表中的id
第二个值 t.uid 是要查询的 表中的集合 也就是上图表中 的uid