SELECT CUST_CODE
, DECODE(GROUPING(DECODE(ITEM_TYPE, '800', '원단' , '상자')), 1, '합계'
, DECODE(ITEM_TYPE, '800', '원단' , '상자')) ITEM_TYPE, SUM(M2) M2, SUM(AMT) AMT
FROM V_SALE
WHERE IN_OUT_DD BETWEEN '2013-01-01' AND '2013-05-31'
GROUP BY CUST_CODE
, ROLLUP(DECODE(ITEM_TYPE, '800', '원단' , '상자'));
아까 아린님이 가르쳐주신대로 쿼리를 작성했습니다.
거래처코드 |
아이템타입 |
M2 |
AMT |
07 |
상자 |
10 |
100 |
07 |
원단 |
20 |
250 |
07 |
합계 |
30 |
350 |
01 |
상자 |
30 |
200 |
01 |
합계 |
30 |
200 |
이런식으로 출력이 되고 있구요.
이 것을
|
M2 |
AMT |
M2 |
AMT |
M2 |
AMT |
07 |
20 |
250 |
10 |
100 |
30 |
350 |
01 |
0 |
0 |
30 |
200 |
30 |
200 |
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
이런 형태로 출력하고 싶습니다. 원단 M2, AMT 값이 없을 경우 0으로 표현하고 싶구요.
그리고 가능하다면
|
M2 |
AMT |
M2 |
AMT |
M2 |
AMT |
07 |
20 (66%) |
250 (71%) |
10 (33%) |
100 (29%) |
30 |
350 |
01 |
0 ( 0% ) |
0 ( 0 %) |
30 (100%) |
200 (100%) |
30 |
200 |
원단, 상자가 합계에서 차지하는 퍼센트를 표시하는 방법이 있다면 알려주시면 정말 감사할 것 같습니다.
|