MYSQL左连接,合并字段,一对多关系操作

mysql合并字段用concat,将多个数据合并为一个字段用group_concat,切记group_concat要与group by连用,这样数据就不会只剩下一条。。。

例子:

                select
a.*, concat(
c.provencie,
c.city,
c.district,
c.location
) addressStr,
group_concat(u.userName order by u.id) rusername
from automat a
LEFT JOIN auto_addr b ON (a.id = b.aut_id)
LEFT JOIN address c ON (b.addrId = c.id)
LEFT JOIN replenishment_allocation r ON (a.id = r.autoId)
LEFT JOIN user u ON (u.id = r.userId)

group by a.id;

连接了数个表,group_concat默认连接符号是逗号,也可以使用参数修改,并且,里面可以用order by排序,简直不能再好用,记下来~



你可能感兴趣的:(数据库)