Algorithm/SQL

[SQL] JOIN > 상품 별 오프라인 매출 구하기

메린지 2023. 12. 7. 23:47

[문제]

PRODUCT 테이블과 OFFLINE_SALE 테이블을 연계해서 상품코드 별 매출액(판매가 X 판매량) 합계 출력하는 SQL문 작성하기, 매출액 기준 내림차순, 상품코드 기준 오름차순

 

PRODUCT_IDPRODUCT_CODEPRICE

1 A1000011 15000
2 A1000045 8000
3 C3000002 42000

 

OFFLINE_SALE_IDPRODUCT_IDSALES_AMOUNTSALES_DATE

1 1 2 2022-02-21
2 1 2 2022-03-02
3 3 3 2022-05-01
4 2 1 2022-05-24
5 1 2 2022-07-14
6 2 1 2022-09-22

 

[풀이]

SELECT t1.PRODUCT_CODE, SUM(t2.SALES_AMOUNT*t1.PRICE) as pri
FROM PRODUCT as t1
INNER JOIN OFFLINE_SALE as t2
ON t1.PRODUCT_ID = t2.PRODUCT_ID
GROUP BY t1.PRODUCT_CODE
ORDER BY pri DESC, t1.PRODUCT_CODE ASC;

 

일단 문제보고 생각한건,,, 먼저 테이블 두개 JOIN 하기 위해서 어떤 종류를 골라야하는가,,

INNER? OUTER? LEFT? RIGHT? 잘 파악해야할 것 같고

 

상품코드 기준 조인은 조건에 나와있고,

음 그거말곤 쉬운거같다!!

mysql은 as를 쓰고 , oracle은 안쓴다는거정도 차이만 기억하고 가장.