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

相关推荐
久美子14 小时前
Qoder 使用指南:从配置到落地
后端
tyung14 小时前
Go 手写 Wait-Free MPSC 无界队列:SwapPointer 实现多生产者无锁入队
后端·go
张不才14 小时前
CPU 100% 了怎么办?Java 性能排障的标准化操作
java·后端
鱼人14 小时前
Redis、网关负载均衡为什么不能用普通取模哈希?
后端
juejin99815 小时前
Claude Code Lab-3(下):三能力 MCP Server
后端
java小白小15 小时前
SpringBoot(07):事务管理——@Transactional 你真的用对了吗?
后端
shepherd11115 小时前
吞吐量提升 10 倍:高并发大批量数据处理任务的架构演进与性能调优
java·后端·架构
java小白小15 小时前
SpringBoot(05):Spring Data JPA——用面向对象的方式操作数据库
后端
juejin99815 小时前
Claude Code Lab-2(上):自然语言查库助手
后端
java小白小15 小时前
SpringBoot(06):多数据源配置——一个项目连多个库怎么做
后端