MySQL中group_concat函数
语法如下:
表数据:
[code]
+------+------+
| code| invoiceNO |
+------+------+
|1 | 110|
|1 | 3|
|1 | 20|
|2 | 20|
|3 | 240 |
|3 | 12|
+------+------+
[/code]
以code分组,把invoiceNO 字段的值打印在一行,逗号分隔(默认)
,sql如下:
结果:
[code]
+------+--------------------+
| code| invoiceNO |
+------+--------------------+
|1 | 110,3,20|
|2 | 20 |
|3 | 240,12|
+------+--------------------+
[/code]
如果需要改变分割符,sql如下:
结果:
[code]
+------+--------------------+
| code| invoiceNO |
+------+--------------------+
|1 | 110/3/20|
|2 | 20 |
|3 | 240/12|
+------+--------------------+
[/code]
语法如下:
group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段][Separator '分隔符'])
表数据:
[code]
+------+------+
| code| invoiceNO |
+------+------+
|1 | 110|
|1 | 3|
|1 | 20|
|2 | 20|
|3 | 240 |
|3 | 12|
+------+------+
[/code]
以code分组,把invoiceNO 字段的值打印在一行,逗号分隔(默认)
,sql如下:
select code,group_concat(invoiceNO)as invoiceNO from 表名 group by code;
结果:
[code]
+------+--------------------+
| code| invoiceNO |
+------+--------------------+
|1 | 110,3,20|
|2 | 20 |
|3 | 240,12|
+------+--------------------+
[/code]
如果需要改变分割符,sql如下:
select code,group_concat(invoiceNO separator '/')as invoiceNO from 表名 group by code;
结果:
[code]
+------+--------------------+
| code| invoiceNO |
+------+--------------------+
|1 | 110/3/20|
|2 | 20 |
|3 | 240/12|
+------+--------------------+
[/code]