table: PLMDEBTM
币别字段: CRNCY
應收/應付 字段: DN_TYPE  两个值,D为应收,C为应付
未销账的金额 字段:REC_AMT现在要对币别进行分组汇总,算出账单中 各个币别 应收金额,应付金额,以及币别的未销账金额例如:币别  应收   应付   加总
RMB   1200   800    2000
TWD   2100   1300   3400如上面的,就是先判断这笔数据的未销账的金额是应收类型还是应付类型。

解决方案 »

  1.   


    select crncy as "币别",
           decode(dn_type,'D',REC_AMT) as "应收",
           decode(dn_type,'C',REC_AMT) as "应付",
           decode(dn_type,'D',REC_AMT) + decode(dn_type,'C',REC_AMT) as "加总"
    from plmdebtm
      

  2.   


    --不好意思,忘了分组了
    select crncy as "币别",
           sum(decode(dn_type,'D',REC_AMT)) as "应收",
           sum(decode(dn_type,'C',REC_AMT)) as "应付",
           sum(decode(dn_type,'D',REC_AMT)) + sum(decode(dn_type,'C',REC_AMT)) as "加总"
    from plmdebtm
    group by crncy
      

  3.   

    select crncy as "币别",
           sum(decode(dn_type,'D',REC_AMT)) as "应收",
           sum(decode(dn_type,'C',REC_AMT)) as "应付",
           sum(REC_AMT) as "加总"
    from plmdebtm
    group by crncy
      

  4.   

    decode(dn_type,'D',REC_AMT) + decode(dn_type,'C',REC_AMT) as "加总"
    这里有问题,当其中一个都没有时候,像只有C,没有D,就没办法相加,结果都是为0