【求助】如何把如下格式用SQL语言部分行以列的形式显示?
单位编号 单位名称 险种类型 金额 滞纳金 利息 小计
370236001 dwmc1 养老 1500 50 5 1555
370236001 dwmc1 失业 1400 0 4 1404
370236001 dwmc1 医疗 1300 0 3 1303
370236001 dwmc1 工伤 1200 0 2 1202
370236001 dwmc1 生育 1100 0 1 1101
转换后期望结果格式:
单位编号 单位名称 养老 失业 医疗 工伤 生育 滞纳金 利息 合计
370236001 dwmc1 1500 1400 1300 1200 1100 50 15 6565
请求各位高手帮助写个PL/SQL语句????
email:[email protected]
单位编号 单位名称 险种类型 金额 滞纳金 利息 小计
370236001 dwmc1 养老 1500 50 5 1555
370236001 dwmc1 失业 1400 0 4 1404
370236001 dwmc1 医疗 1300 0 3 1303
370236001 dwmc1 工伤 1200 0 2 1202
370236001 dwmc1 生育 1100 0 1 1101
转换后期望结果格式:
单位编号 单位名称 养老 失业 医疗 工伤 生育 滞纳金 利息 合计
370236001 dwmc1 1500 1400 1300 1200 1100 50 15 6565
请求各位高手帮助写个PL/SQL语句????
email:[email protected]
解决方案 »
- 入门,数据库恢复问题
- Oracle10g创表查表问题
- 加大process后重起电脑oracle9i数据库不启动了?
- Oracle Database Express Edition 11g Release 2 支持windows 8 X64位操作系统吗?
- C/S结构,客户端PC可以不装Oracle客户端进行访问吗?
- 如何取 GUID ???
- 对于Oracle的管理,用什么工具好呀?
- 请问,一个oracle的安装问题,请诸位高手多多指教
- 这样创建数据库为什么会错的?
- 问题求解:jdbc连接oracle数据库,连接不释放,导致资源占用逐渐增加,不知原因何在
- 【求助】plsql中用delete和drop以及alter命令删除的行如何恢复过来?
- Enterprise Manager Console数据库名称错误
max(decode(险种类型,养老,金额,0)) as "养老",
max(decode(险种类型,失业,金额,0)) as "失业",
max(decode(险种类型,医疗,金额,0)) as "医疗",
max(decode(险种类型,工伤,金额,0)) as "工伤",
max(decode(险种类型,生育,金额,0)) as "生育",
sum(滞纳金) as "滞纳金",
sum(利息) as "利息",
sum(金额+滞纳金+利息) as "合计"
from yourTable
group by 单位编号,单位名称
order by 单位编号
MAX(DECODE(险种类型,'医疗',金额,0)) 医疗,MAX(DECODE(险种类型,'工伤',金额,0)) 工伤,MAX(DECODE(险种类型,'生育',金额,0)) 生育,
SUM(滞纳金) 滞纳金,SUM(利息) 利息,SUM(金额)+SUM(滞纳金)+SUM(利息) 合计 FROM TABLENAME GROUP BY 单位编号,单位名称
sum(case 险种类型 when '养老' then 金额 else 0 end) 养老,
sum(case 险种类型 when '失业' then 金额 else 0 end) 失业,
sum(case 险种类型 when '医疗' then 金额 else 0 end) 医疗,
sum(case 险种类型 when '工伤' then 金额 else 0 end) 工伤,
sum(case 险种类型 when '生育' then 金额 else 0 end) 生育,
sum(滞纳金) 滞纳金,
sum(利息) 利息,
sum(小计) 合计
from tb
group by 单位编号 , 单位名称