1. 程式人生 > >MYSQL左連線,合併欄位,一對多關係操作

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排序,簡直不能再好用,記下來~