SQL實現根據類型對金額進行歸類

select  temp.id  ,sum(temp.typyA_amount)?as?typyA_amount  ,sum(temp.typyB_amount)?as?typyB_amount  ,sum(temp.typyC_amount)?as?typyC_amount  ,sum(temp.typyD_amount)?as?typyD_amount  from  ??(select?t.id  ??,sum(t.A)?as?typyA_amount??--A  ??,null?as?typyB_amount?--B  ??,null?as?typyC_amount?--C  ??,null?as?typyD_amount?--D  ??from?table?t  ??where?t.type?='A'  ??group?by?t.id  ??union?all  ??select?t.id  ??,null?as?typyA_amount??--A  ??,sum(t.B)?as?typyB_amount?--B  ??,null?as?typyC_amount?--C  ??,null?as?typyD_amount?--D  ??from?table?t  ??where?t.type?='B'  ??group?by?t.id  ??union?all  ??select?t.id  ??,null?as?typyA_amount??--A  ??,null?as?typyB_amount?--B  ??,sum(t.C)?as?typyC_amount?--C  ??,null?as?typyD_amount?--D  ??from?table?t  ??where?t.type?='C'  ??group?by?t.id  ??union?all  ??select?t.id  ??,null?as?typyA_amount??--A  ??,null?as?typyB_amount?--B  ??,null?as?typyC_amount?--C  ??,sum(t.D)?as?typyD_amount?--D  ??from?table?t  ??where?t.type?='D'  ??group?by?t.id)?temp
? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享