oracle中的PIVOT函数

场景:原始数据不是想要的效果,需要我们进行处理,这得使用pivot函数(列转行,行转列)
原始表展示内容如下:

sql 复制代码
select * from your_table


需求:我们需要将年份、类型名称按行显示其值!
解决方案: pivot函数

sql 复制代码
SELECT FNAME, a2019, a2020, a2021, a2022
	FROM V_BP_ZYJJZB
	PIVOT (MAX(FVALUE) FOR F_SYS_YEAR IN ('2019' AS a2019, '2020' AS a2020, '2021' AS a2021, '2022' AS a2022))

显示效果:
SQL解读:pivot语法pivot (... for ... in ...),其中'2019' AS a2019为字段值起别名,方便在SELECT后引用。

相关推荐
杨云龙UP几秒前
Oracle 19c RMAN历史备份清理失败:CONTROL_FILE_RECORD_KEEP_TIME 问题排查与整改实战
linux·运维·网络·数据库·oracle·rac
~木雨7 分钟前
String 底层原理与常量池全解析:byte []+coder、intern 陷阱、substring 内存泄漏,一篇讲透
java·jvm·内存优化·string·字符串常量池
2601_9620739713 分钟前
【MySQL】全面学习数据库查询技巧:查询指令深度学习指南
数据库·学习·mysql
新知图书15 分钟前
12.3 智能体中Skill的约束与自进化实战
java·前端·数据库
en.en..24 分钟前
C语言 static函数与头文件封装规范
java·c语言·前端
步行cgn30 分钟前
Spring Boot 项目打包部署详解
java·spring boot·后端
小小龙学IT37 分钟前
Qt 数据库编程(Qt SQL 模块)深度解析
数据库·sql·qt
pnoker1 小时前
拆解 IoT DC3:六层微服务架构
java·物联网·spring cloud·微服务·架构
TDengine (老段)1 小时前
TDengine vs InfluxDB — 全方位对比
大数据·数据库·物联网·时序数据库·tdengine·涛思数据·iotdb
cfm_29141 小时前
ThreadLocal 内存泄漏
java·jvm