SUM을 맨 위 row에나오게.. 0 3 1,706

by 동글222 [2017.01.09 16:40:19]


SELECT  A           
       ,B                   
       ,C                   
       ,D                   
       ,E                   
       ,F                   
       ,NVL(G, 0) AS G      
       ,H                   
       ,I                   
       ,NVL(J,0) AS J       
      FROM TEST
     WHERE  A = '3000'
       AND B = '201601'
       AND C = '02'
       AND D = 'AA'
       AND E = '20'
       --------이게 현재 조회 쿼리인데요..-----


       SUM(G), SUM(J) 를 첫째 칸에 나오게 하고싶어요 ㅠㅠ
       
       
       A       B        C   D    E     F   G  H    I     J
      합계                                    2            20000
       BBB  201601  01  AA  20  DD  1   D   F   10000
       CCC  201602  01  AA  20  DD  1   D   F   10000

 

결과화면이 이런식으로요..

어떻게 짜면 될지..도움부탁드립니다. ㅠㅠ

by 마농 [2017.01.09 17:17:40]
SELECT NVL(a, '합계') AS a
     , b
     , c
     , d
     , e
     , f
     , NVL(SUM(g), 0) AS g
     , h
     , i
     , NVL(SUM(j), 0) AS j
  FROM test a
 WHERE a = '3000'
   AND b = '201601'
   AND c = '02'
   AND d = 'AA'
   AND e = '20'
 GROUP BY ROLLUP((a, b, c, d, e, f, h, i))
 ORDER BY GROUPING(a.a) DESC
     , a, b, c, d, e, f, h, i
;

 


by 동글222 [2017.01.10 11:56:10]

답변 감사합니다.^^

혹시 합계라고 나오는 부분이 colspan처럼  a b컬럼 가운데올수있는 방법도 있나요?ㅠㅠ


by 마농 [2017.01.10 13:14:28]

엑셀처럼 컬럼 합치기는 불가능하죠.

a 에 합, b 에 계 를 표시할 수는 있겠죠.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입