select sum(decode(a.mm,'01',num,0)) m1 , sum(decode(a.mm,'02',num,0)) m2, sum(decode(a.mm,'03',num,0)) m3, sum(decode(a.mm,'04',num,0)) m4, sum(decode(a.mm,'05',num,0)) m5, sum(decode(a.mm,'06',num,0)) m6, sum(decode(a.mm,'07',num,0)) m7, sum(decode(a.mm,'08',num,0)) m8, sum(decode(a.mm,'09',num,0)) m9, sum(decode(a.mm,'10',num,0)) m10, sum(decode(a.mm,'11',num,0)) m11, sum(decode(a.mm,'12',num,0)) m12, sum(num) from (select count(1) num, to_char(m.optdate, 'MM') mm FROM czrzb M group by to_char(m.optdate, 'MM')) A