ORACLE的LISTAGG() WITHIN GROUP ()使用

长话短说,oracle中的LISTAGG() WITHIN GROUP ()把一列的值合并为一个值,用指定的分隔符隔开,根据条件汇总某些列上的字段,就是根据某些指定的条件,把该列的字段,汇总在行的一个字段里,行转列函数;

需要注意的事项如下:

(1)group  by是必须的,必须得分组。
(2)listagg函数的第一个参数是需要显示的字段;第二个参数是数值之间的分隔符;同时还需要进行排序和分组within group (order by 字段名)

举例说明:

select * from userinfo

在这里插入图片描述
把上面name的列上的所有值合并在一行一列表示:

select listagg(name, ',') within group( order by name) as name from userinfo 

在这里插入图片描述

发布了291 篇原创文章 · 获赞 33 · 访问量 2万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 点我我会动 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览