select a.xm 姓名, a.xiangmvalue 岗位工资,b.xiangmvalue 基本工资 from gz a , gz b where a.xm=b.xm and a.xiangm='岗位工资'and b.xiangm='基本工资';

解决方案 »

  1.   

    select xinm as xm,
           sum(decode(xiangm,'岗位工资',xiangmValue)),
           sum(decode(xiangm,'基本工资',xiangmValue))
      from tbl
     group by xm
      

  2.   

    select xm,
    max(decode(seq,1,a,null))  基本工资,
    max(decode(seq,2,a,null))  岗位工资
    from (
    select xinm xm,xiangmValue a,row_number() over (partition by xinm order by xiangm desc) seq from tb1

    group by xinm
      

  3.   

    select xinm as xm, min(xiangmValue) as '岗位工资', max(xiangmValue) as '基本工资'
    from tb1
    group by xinm
      

  4.   

    用分组函数:
    select xinm, 
    sum(decode(xiangm, 岗位工资, xiangmValue, null))  基本工资,
    sum(decode(xiangm, 基本工资, xiangmValue, null))  岗位工资
    from tb1
    group by xinm
      

  5.   

    select xinm,sum(decode(xiangm,'岗位工资',xiangmvalue)) as 岗位工资, sum(decode(xiangm,'基本工资',xiangmvalue)) as 基本工资
     from tb1
     group by xinm