把查詢name字段得到的多行記錄進行合并,可以通過程序?qū)崿F(xiàn),但也可直接在sql層完成,需要的朋友可以參考下
假設(shè)兩個表a,b,b中通過字段id與a表關(guān)聯(lián),a表與b表為一對多的關(guān)系。假設(shè)b表中存在一字段name,現(xiàn)需要查詢a表中的記錄,同時獲取存儲在b表中的name信息,按照常規(guī)查詢,b表中有多少記錄,則會顯示多少行,如果需要只顯示a表記錄行數(shù),則需要把查詢name字段得到的多行記錄進行合并,可以通過程序?qū)崿F(xiàn),但也可直接在sql層完成。
方法
利用group_concat()方法,參數(shù)為需要合并的字段,合并的字段分隔符默認為逗號,可通過參數(shù)separator指定,該方法往往配合group by 一起使用。例子
select a.*,group_concat(b.name separator '-') as name from a left join b on a.id=b.id group by a.id;
|
新聞熱點
疑難解答