本文摘自PHP中文网,作者藏色散人,侵删。

listagg函数的用法
这是一个Oracle的列转行函数:LISTAGG()
先看示例代码:
Sql代码
1 2 3 4 5 6 7 8 9 10 11 | with temp as (
select 'China' nation , 'Guangzhou' city from dual union all
select 'China' nation , 'Shanghai' city from dual union all
select 'China' nation , 'Beijing' city from dual union all
select 'USA' nation , 'New York' city from dual union all
select 'USA' nation , 'Bostom' city from dual union all
select 'Japan' nation , 'Tokyo' city from dual
)
select nation,listagg(city, ',' ) within GROUP (order by city)
from temp
group by nation
|
这是最基础的用法:
1 | LISTAGG(XXX,XXX) WITHIN GROUP( ORDER BY XXX)
|
用法就像聚合函数一样,通过Group by语句,把每个Group的一个字段,拼接起来。
非常方便。
同样是聚合函数,还有一个高级用法:
就是over(partition by XXX)
阅读剩余部分
相关阅读 >>
listagg函数的用法
更多相关阅读请进入《listagg》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » listagg函数的用法