15.oracle的 listagg() WITHIN GROUP () 行转列函数使用

1.使用条件查询 查询部门为20的员工列表

-- 查询部门为20的员工列表

SELECT t.DEPTNO,t.ENAME FROM SCOTT.EMP t where t.DEPTNO = '20' ;

效果:

2.使用 listagg() WITHIN GROUP () 将多行合并成一行(比较常用)

SELECT

T .DEPTNO,

listagg (T .ENAME, ',') WITHIN GROUP (ORDER BY T .ENAME) names

FROM

SCOTT.EMP T

WHERE

T .DEPTNO = '20'

GROUP BY

T .DEPTNO

效果:

相关推荐
念何架构之路14 小时前
beego ORM 源码(下):SQL 生成与方言
数据库·sql·beego
livemetee15 小时前
MySQL联合唯一索引(code,deleted)与逻辑删除问题
java·数据库
Doris__HE15 小时前
【元脑服务器NF8480G7-NF8480M7技术规格分享】
运维·服务器·数据库·缓存·性能优化
实心儿儿15 小时前
MySQL — 库的操作
数据库·mysql·oracle
bksczm15 小时前
MySQL基础篇之索引
数据库·sql·mysql
Lethehong15 小时前
让数据库真正“长“在 Kubernetes 里:KES-Operator 正式发布,K8s 环境下的 KES 集群管理有了标准答案
数据库
l1t15 小时前
DeepSeek总结的PostgreSQL 19 发生了什么
数据库·postgresql
Pocker_Spades_A15 小时前
时序数据库选型指南:从大数据视角看Apache IoTDB的工业级优势
数据库
梦想平凡15 小时前
情怀棋牌源代码焕新记录(一):全新国风UI与原版工程梳理
java·服务器·数据库·websocket·网络协议·cocos2d
cspttty15 小时前
FP&A应届岗技能路线:Excel建模、SQL取数、BI看板与预算分析
大数据·数据库