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后引用。

相关推荐
Star Learning Python13 小时前
30道经典java面试题
java·开发语言
程序员鱼皮13 小时前
你的 IP 归属地,是咋被挖出来的?
前端·后端·计算机·程序员·互联网·编程经验
什么都不会的Tristan14 小时前
redis-原理篇-SDS
数据库·redis·缓存
运维@小兵14 小时前
Spring AI入门
java·人工智能·spring
Geoking.14 小时前
【设计模式】策略模式(Strategy)详解:把 if-else 变成可切换的算法
java·设计模式·策略模式
代码改变生活-12014 小时前
idea 清除缓存之后重启项目编译失败
java·缓存·intellij-idea
fisher_sky14 小时前
流媒体服务mediamtx和FFMpeg工具链联合实验
后端
Microsoft Word14 小时前
HashMap面试题总结
java·开发语言
stillaliveQEJ14 小时前
【MyBatis】DML映射
java·mybatis
qq_124987075314 小时前
基于SSM框架的智能密室逃脱信息管理系统(源码+论文+部署+安装)
java·大数据·人工智能·spring boot·后端·毕业设计·计算机毕业设计