一 將單條記錄中的某個(gè)字段合并: concat()
假如對(duì)于user表,如下:
創(chuàng)新互聯(lián)始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營(yíng)理念,通過多達(dá)十年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的網(wǎng)絡(luò)營(yíng)銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:橡塑保溫等企業(yè),備受客戶表揚(yáng)。
id | class | name | age |
---|---|---|---|
1 | 1001 | zh | 18 |
2 | 1001 | en | 19 |
3 | 1002 | cs | 18 |
4 | 1002 | jp | 19 |
如果想將name 和age 作為一個(gè)字段顯示, 有:
select id, class, concat(name, ": ", age) as name_age from user;
結(jié)果:
id | class | name_age |
---|---|---|
1 | 1001 | zh:18 |
2 | 1001 | en:19 |
3 | 1002 | cs: 18 |
4 | 1002 | jp: 19 |
二 將多條記錄中的某些字段合并:group_coacat()
依然對(duì)上面user表, 若根據(jù)年級(jí)分組, 并將name和age全部合并在一列中顯示, 有:
select class, group_concat(name, ":", age) as name_age from user group by class;
結(jié)果為:
class | name_age |
---|---|
1001 | zh:18,en:19 |
1002 | cs:18,jp:19 |
使用group_coacat() 方法默認(rèn)是以“,”進(jìn)行分割, 如果希望以其他字符進(jìn)行分割可使用“separator”, 如:
select class, group_concat(name, ":", age separator ";") as name_age from user group by class;
結(jié)果為:
class | name_age |
---|---|
1001 | zh:18;en:19 |
1002 | cs:18;jp:19 |