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

相关推荐
风向决定发型丶11 小时前
redis集群搭建
数据库·redis·缓存
2501_9475758012 小时前
计算机毕业设计之jsp开山车行二手车交易系统
java·开发语言·hadoop·python·信息可视化·django·课程设计
骑士雄师12 小时前
java面试题 4:鉴权
java·开发语言
wei_shuo13 小时前
KES 扩展与插件开发实战:自定义函数、触发器与第三方插件集成
数据库·kes
独孤九剑打醒他13 小时前
双层Master-Worker软硬协同调度架构:从根源解决分布式数据一致性难题
后端·嵌入式硬件·硬件架构·硬件工程
风中芦苇啊13 小时前
从直接生成到受控配置:新一代图表Agent的SQL安全生成范式
数据库·sql·安全
帅次13 小时前
Android 高级工程师面试:Java 基础知识 近1年高频追问 22 题
android·java·面试
蓝胖的四次元口袋13 小时前
Java集合(4)
java·哈希算法
吴声子夜歌13 小时前
SQL进阶——窗口函数
数据库·sql
周杰伦的稻香14 小时前
MySQL8.0+中引入的SET_USER_ID权限迭代SUPER权限指定 DEFINER
数据库·mysql