好像只有用decode的方法,
select 姓名, sum(decode(工资项,'基本工资',工资,0)) 基本工资,
sum(decode(工资项,'岗位工资',工资,0)) 岗位工资, ....
from yourtable
group by 姓名不过建议你工资项采用数字编号,这样decode的时候要快一些。
select 姓名, sum(decode(工资项,'基本工资',工资,0)) 基本工资,
sum(decode(工资项,'岗位工资',工资,0)) 岗位工资, ....
from yourtable
group by 姓名不过建议你工资项采用数字编号,这样decode的时候要快一些。
select 姓名, 工资项,sum(工资) from table1 group by 姓名,工资项.
然后做报表,把姓名拖到左边,把工资项拖到上边,即可。自动会有合计项。
用 excel也能实现,就是数据透视表了。
那也就是工资项不固定了,那就只有采用存储过程和动态SQL的方法,先将所有的工资项取出,然后拼出所需SQL,不管如何,最终的SQL总是采用decode这样的吧?