Oracle使用decode实现行转列

HIS开发中,在各种统计时经常会用到行转列,下面简单记录一下使用decode实现行转列


表:

住院号费用费用分类
00110.00西药费
00120.00中药费
00130.00西药费
00210.00检查费
00220.00

西药费


要实现效果:

住院号西药费中药费检查费
00140.0020.000
00220.00010.00


详细实现语句如下:


select

住院号,

sum(decode(费用分类,'西药费',费用,0)) 西药费,

sum(decode(费用分类,'中药费',费用,0)) 中药费,

sum(decode(费用分类,'检查费',费用,0)) 检查费

from 费用表

group by 住院号





©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页