SELECT YM "날짜",
(CASE WHEN C.DISTANCE_KM BETWEEN 0 AND 30 THEN 30
WHEN C.DISTANCE_KM BETWEEN 31 AND 50 THEN 50
WHEN C.DISTANCE_KM BETWEEN 51 AND 100 THEN 100
WHEN C.DISTANCE_KM BETWEEN 101 AND 200 THEN 200
ELSE 201
END) AS "거리",
NVL(DECODE(Y.ITEM_OR,'010','전기',
'020','식음료',
'040','생활용품',
'050','섬유',
'060','농산물',
'070','수산물',
'080','자동차',
'999','기타'),'없음') "업종",
H.EMP_NM_KOR "담당자명",
J.CUST_NM "거래처명",
J.TOT_M21*NVL(Y.CLASS_RATE/100,1) "매출수량(M2)", J.AMT1*NVL(Y.CLASS_RATE/100,1) "매출금액"
FROM SALE.V_SALE_JUN J,
SALE.V_SALE_CLASSIFY Y,
SALE.SDBS_CUST C,
HRMS.HDPB_EMP H
WHERE J.ITEM_TYPE = '800'
AND YM ='201402'
AND C.SM_CODE = H.EMP_NO
AND J.CUST_CODE = Y.CUST_CODE(+)
AND J.CUST_CODE = C.CUST_CODE(+)
ORDER BY 2,3,4
쿼리는 이런 구성이 되어있습니다.
날짜 |
거리 |
업종 |
담당자명 |
거래처명 |
수량 |
금액 |
201402 |
30 |
전기 |
홍길동 |
부산 |
1 |
10 |
201402 |
30 |
식음료 |
이순신 |
울산 |
5 |
50 |
201402 |
50 |
기타 |
홍길동 |
대구 |
3 |
30 |
201402 |
50 |
기타 |
유관순 |
양산 |
6 |
60 |
201402 |
50 |
기타 |
신사임당 |
서울 |
2 |
20 |
201402 |
100 |
수산물 |
홍길동 |
대전 |
4 |
40 |
201402 |
100 |
농산물 |
신사임당 |
수원 |
1 |
10 |
201402 |
200 |
자동차 |
홍길동 |
인천 |
5 |
50 |
201402 |
201 |
자동차 |
이순신 |
광주 |
6 |
60 |
이렇게 출력이 됩니다.
제가 원하는 형식은
날짜 |
거리 |
업종 |
담당자명 |
거래처명 |
수량 |
금액 |
201402 |
30 |
전기 |
홍길동 |
부산 |
1 |
10 |
|
|
|
담당자계 : 홍길동 |
|
1 |
10 |
|
|
업종계 : 전기 |
|
|
1 |
10 |
|
|
식음료 |
이순신 |
울산 |
5 |
50 |
|
|
|
담당자계 : 이순신 |
|
5 |
50 |
|
|
업종계 : 식음료 |
|
|
5 |
50 |
|
거리별 계 |
|
|
|
6 |
60 |
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
|
|
|
총 합계 |
|
|
|
|
6 |
60 |
이런 식으로 나오게 하고 싶습니다.
ROLLUP 관련해서 계속 공부하고 있긴 한데 어렵네요...
도움 부탁드립니다. 감사합니다.
|