개발자 미니민의 개발스터디

[Oracle 문제] 조인 - 고객별 누적 판매금액/비율 출력

by mini_min
[Oracle 문제]
조인 - 고객별 누적 판매금액 출력

-- 출력컬럼 : cNum, cName, 판매금액합(qty*bPrice)

-- ❌ 한 권도 책을 구매하지 않은 고객도 출력!!

-- book(bCode, bPrice), dsale(sNum, bCode, qty), sale(sNum, cNum), cus(cNum, cName)

SELECT c.cNum, cName, NVL(SUM(qty*bPrice), 0) 판매금액합
    FROM book b
    JOIN dsale d ON b.bCode = d.bCode
    JOIN sale s ON s.sNum = d.sNum
    FULL OUTER JOIN cus c ON s.cNum = c.cNum
    GROUP BY c.cNum, cName;
💡 한 번도 구매 안한 고객까지 출력하려면, FULL OUTER 로 출력하기

 

 

 

고객별 누적판매 금액 및 비율(%)

-- 출력컬럼 : cNum, cName, 판매금액합(qty*bPrice), 비율(전체판매금액에 대한 고객판매금액)

-- book(bCode, bPrice), dsale(sNum, bCode, qty), sale(sNum, cNum), cus(cNum, cName)

SELECT c.cNum, cName, SUM(qty*bPrice) 판매금액합, TRUNC(RATIO_TO_REPORT(SUM(qty*bPrice)) OVER()*100, 1)
    FROM book b
    JOIN dsale d ON b.bCode = d.bCode
    JOIN sale s ON s.sNum = d.sNum
    JOIN cus c ON s.cNum = c.cNum
    GROUP BY c.cNum, cName;
💡 RATIO_TO_REPORT 함수를 사용하면 쉽게 백분율 구하기 좋음

 

 

 

 

 

 

블로그의 정보

개발자 미니민의 개발로그

mini_min

활동하기