怎么用listagg函数分组实现列转行


小编给大家分享一下怎么用listagg函数分组实现列转行,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!listagg是Oracle 11.2中新增的函数,listagg可以对order by子句中指定的每个组内的数据进行排序,然后连接这些列的值。以下是简单的应用举例:SELECT deptno, listagg(ename, ‘,’) WITHIN GROUP(ORDER BY ename) AS em免费云主机域名ployees FROM scott.emp GROUP BY deptno;可以在livesql.oracle.com云平台中体验:再看以下的查询,包含了重复值:select d.dname, listagg(e.job, ‘,’) within group(order by e.job) jobs from scott.dept d, scott.emp e where d.deptno = e.deptno group by d.dname;Oracle 19C做了一个小改进,可以方便的对转换结果去重,支持distinct关键字:select d.dname, listagg(distinct e.job, ‘,’) within group(order by e.job) jobs from scott.dept d, scott.emp e where d.deptno = e.deptno group by d.dname;看完了这篇文章,相信你对“怎么用listagg函数分组实现列转行”有了一定的了解,如果想了解更多相关知识,欢迎关注百云行业资讯频道,感谢各位的阅读!

相关推荐: 怎么查看Linux下系统资源占用情况

本篇内容主要讲解“怎么查看Linux下系统资源占用情况”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么查看Linux下系统资源占用情况”吧!CPU的信息。当有多个CPU时,这些内容可能会超过两行。eg.Tasks…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 01/10 17:13
Next 01/10 17:13