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

相关推荐
ZGG0037 分钟前
线程池详解:从 7 大参数到生产避坑
java·数据库·后端
龙亘川9 分钟前
数智赋能退役军人服务:V1.0 系统搭建全生命周期闭环服务体系
大数据·数据库·人工智能
迪康Defender12 分钟前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
zhangguojia742 分钟前
权限弹窗点击允许的授权流程
运维·服务器·数据库
jnrjian1 小时前
Postgres 序列(sequence)的权限
数据库·postgresql
风禾万里1 小时前
【无标题】
数据库
京师20万禁军教头1 小时前
47-常用类-八大包装类(Wrapper Classes)
java
镜舟科技1 小时前
为什么 Text-to-SQL 总是停在 Demo?
数据库·sql·demo·text-to-sql·镜舟科技·mip·语义视图
come112341 小时前
剪映零基础教程
java·linux·运维
16月6日-晴1 小时前
Java面向对象——接口
java·开发语言