数据仓库服务 GAUSSDB(DWS)-聚集函数:group_concat(expression [ORDER BY {col_name | expr} [ASC | DESC]] [SEPARATOR str_val])

时间:2023-12-29 17:11:48

group_concat(expression [ORDER BY {col_name | expr} [ASC | DESC]] [SEPARATOR str_val])

描述:将列数据使用指定的str_val分隔符,按照ORDER BY子句指定的排序方式拼接成字符串,ORDER BY子句必须指定排序方式,不支持ORDER BY 1的写法。

  • expression:必选,指定列名或基于列的有效表达式,不支持DISTINCT关键字和VARIADIC参数。
  • str_val:可选,指定的分隔符,可以是字符串常数或基于分组列的确定性表达式。缺省时表示分隔符为逗号。

返回类型:text

group_concat函数仅8.1.2及以上版本支持。

示例:

默认分隔符为逗号:

1
2
3
4
5
SELECT group_concat(sname) FROM group_concat_test;
               group_concat
------------------------------------------
 ADAMS,FORD,JONES,KING,MILLER,SCOTT,SMITH
(1 row)

group_concat函数支持自定义分隔符:

1
2
3
4
5
SELECT group_concat(sname separator ';') from group_concat_test;
               group_concat
------------------------------------------
 ADAMS;FORD;JONES;KING;MILLER;SCOTT;SMITH
(1 row)

group_concat函数支持ORDER BY子句,将列数据进行有序拼接:

1
2
3
4
5
SELECT group_concat(sname order by snumber separator ';') FROM group_concat_test;
               group_concat
------------------------------------------
 MILLER;FORD;SCOTT;SMITH;KING;JONES;ADAMS
(1 row)
support.huaweicloud.com/sqlreference-dws/dws_06_0046.html
推荐文章