Oracle常用函数:Oracle Database SQL Language Reference, 12c Release 2 (12.2)
1 listagg
LISTAGG
Syntax
Description of the illustration listagg.eps
(listagg_overflow_clause::=, order_by_clause::=, query_partition_clause::=)
listagg_overflow_clause::=
Description of the illustration listagg_overflow_clause.eps
eg:
listagg(t.GROUP_CODE, '","') within group(order by t.GROUP_CODE) as GROUP_CODE
2 wm_concat
该方式仅Oracle可用。
eg:
REPLACE(wm_concat(t.GROUP_CODE), ',', '","') AS GROUP_CODE
3 xmlagg
Syntax
Description of the illustration xmlagg.eps
eg:
xmlagg(xmlelement(e,t.GROUP_CODE,'","').extract('//text()')).getclobval() AS GROUP_CODE
4 JSON_ARRAYAGG
Syntax
Description of the illustration json_arrayagg.eps
(See order_by_clause::= in the documentation on SELECT
for the syntax of this clause)
JSON_on_null_clause::=
Description of the illustration json_on_null_clause.eps
JSON_agg_returning_clause::=
Description of the illustration json_agg_returning_clause.eps
eg:
(1)json_value(JSON_ARRAYAGG(json_value(json_object(t.GROUP_CODE),'$.GROUP_CODE') returning clob) ,'$[0]') AS GROUP_CODE
(2)rtrim(ltrim(JSON_ARRAYAGG(json_value(json_object(t.GROUP_CODE),'$.GROUP_CODE') returning clob),'["'),'"]') AS GROUP_CODE