본문 바로가기
프로그래머스/SQL

[프로그래머스] 오프라인/온라인 판매 데이터 통합하기 오라클

by 몰라닉네임 2024. 5. 6.

 

문제

오프라인/온라인 판매 데이터 통합하기 오라클

https://school.programmers.co.kr/learn/courses/30/lessons/131537

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

생각해 볼 부분 

 두 테이블을 JOIN 하면 중복된 데이터를 결합하게 된다. 이는 온라인과 오프라인의 모든 데이터를 통합하는 것이 아니다!!!

이 부분을 깊게 생각해봤으면 좋겠다. 

 

JOIN은 중복된 데이터를 이용하는 것이고 UNION(중복 제거)은 결과를 합치는 것

 

NULL AS 컬럼명

NULL 값을 가진 컬럼을 생성할 때 사용한다.

 

 

-- 코드를 입력하세요 
(SELECT TO_CHAR(SALES_DATE, 'YYYY-MM-DD') AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT
FROM ONLINE_SALE 
WHERE TO_CHAR(SALES_DATE, 'YYYY-MM') = '2022-03')
UNION ALL
(SELECT TO_CHAR(SALES_DATE, 'YYYY-MM-DD') AS SALES_DATE, PRODUCT_ID, NULL AS USER_ID, SALES_AMOUNT
FROM OFFLINE_SALE
WHERE TO_CHAR(SALES_DATE, 'YYYY-MM') = '2022-03')
ORDER BY SALES_DATE ASC, PRODUCT_ID ASC , USER_ID ASC