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

相关推荐
酒後少女的夢6 小时前
设计模式教程
后端·架构
凌览6 小时前
别再手搓 Skill 了,用这个工具 5 分钟搞定
前端·后端
殷紫川6 小时前
深入拆解 Fork/Join 框架:核心原理、分治模型与参数调优实战
java
yaaakaaang6 小时前
十六、解释器模式
java·解释器模式
若阳安好7 小时前
【提效小工具】IN SQL、UPDATE SQL、INSERT SQL
java·数据库·sql
二月十六7 小时前
SQL Server 2022 新函数:DATETRUNC 日期截断详解
数据库·sqlserver·datetrunc
乐之者v7 小时前
20多个表,每个都有userId 和其他几个属性,要根据userId把他们全部汇总,如何处理?
java·mysql
weixin_408099677 小时前
python请求文字识别ocr api
开发语言·人工智能·后端·python·ocr·api·ocr文字识别
惊鸿若梦一书生7 小时前
《Python 高阶教程》003|变量背后不是盒子:名字、对象与引用的本质
java·jvm·python