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

效果:

相关推荐
SelectDB几秒前
2026 年 Apache Doris 和 StarRocks 怎么选?一篇更接近真实选型的对比
大数据·数据库·数据分析
祢真伟大4 分钟前
DM8 归档日志挖掘导致 TEMP 表空间不释放的问题排查
数据库
qq_4850152110 分钟前
MyBatis-Plus 3.x FieldStrategy 作用
java·数据库·mybatis
lhldsg12 分钟前
课程排课系统实战指南:从数据库设计到算法调优全流程解析
java·数据库·算法·小程序
丰锋ff29 分钟前
数据库操作的一些相关命令
数据库
往事只能回味味道34 分钟前
MySQL创建数据库并授权指导用户与IP
数据库·tcp/ip·mysql
BUG研究员_1 小时前
LangChain 向量数据库实战:Redis 与 Pinecone 的知识点总结
数据库·redis·langchain
API快乐传递者1 小时前
1688 跨境电商 API 接口实战指南:从寻源到代采的全链路技术方案
java·前端·数据库
LabVIEW开发1 小时前
LabVIEW按段拆分TDMS文件的格式边界与重构
开发语言·数据库·重构·labview·labview知识·labview功能·labview程序
程序员-Benothing2 小时前
什么是数据全量同步和增量同步?它们各有什么优缺点?
数据库