2011年11月3日 星期四

Oracle : Pivot

select a.*,c.sortl
  from (
        select a.aufnr,c.SMALL_GROUP,c.matkl,a.matnr,b.maktx,a.bwart,sum(a.menge) menge
          from sap_mseg a,sap_makt b,mes_vw_small_class c
         where (a.aufnr like '26%' or a.aufnr like '27%')
           and a.matnr = b.matnr
           and a.bwart in ('261','262','961','962')
           and a.matnr = c.matnr
         group by a.aufnr,a.matnr,a.bwart,b.maktx,c.SMALL_GROUP,c.matkl
       )
 pivot (sum(menge)
         for bwart in ('261' as mvt261,'262' as mvt262,'961' as mvt961,'962' as mvt962)
       ) a
 left join sap_eina b on a.matnr = b.matnr
 left join sap_lfa1 c on b.lifnr = c.lifnr
 order by a.matkl
      

沒有留言:

張貼留言