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

效果:

相关推荐
IpdataCloud19 分钟前
跨境AI金融风险怎么防?IP风险画像的实战应用指南
数据库·tcp/ip·金融·ip
Alan_752 小时前
API 接口慢调用根因定位:从 TCP 建连到数据库 IO 的全栈排查实战
数据库
多巴胺梦想家3 小时前
事务与并发控制:当多人同时操作数据库
服务器·数据库·oracle
howard20054 小时前
PostgreSQL起步
数据库·postgresql
秋田君4 小时前
QT_QT布局详解
开发语言·数据库·qt
可乐ea5 小时前
【Redis八股|第8篇】Redis 分布式锁原理与 Redisson 使用
数据库·redis·分布式·面试题·redis八股
李燚5 小时前
Eino devops 调试系统源码:GraphCompileCallback 怎么工作(第50篇-E36)
数据库·golang·agent·devops·graphql·aiagent·eino
ClouGence5 小时前
Oracle 到 OceanBase 迁移方案横评:停机导出/导入 vs OMS vs CDC 工具
数据库·oracle
Meya11275 小时前
不同规模机房怎么选 U 位系统?8 柜小型机房、40 柜数据中心完整选型参考
服务器·网络·数据库
从此以后自律7 小时前
MySQL 删除数据全方式详解
数据库·mysql