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

정소이·2023년 1월 13일
0

코딩테스트

목록 보기
6/10

UNION ALL : 두 테이블의 중복된 데이터를 제거하지 않고 합체!

UNION : 두 테이블의 중복된 데이터를 제거하고 합체!

두 경우 모두 컬럼이 같아야한다.
그런데 이 문제의 경우, offline의 user id 컬럼이 없어 어려웠는데 offline_sales 테이블의 select 절에서 user id 항목에 NULL을 넣어주니 됐다.
그런데 결과를 보니까 어차피 3월에 오프라인 데이터가 없구만?

SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") as SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT
FROM ONLINE_SALE
WHERE DATE_FORMAT(SALES_DATE, '%c') = '3'
UNION ALL
SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") as SALES_DATE, PRODUCT_ID, NULL, SALES_AMOUNT
FROM OFFLINE_SALE
WHERE DATE_FORMAT(SALES_DATE, '%c') = '3'
ORDER BY SALES_DATE, PRODUCT_ID, USER_ID

profile
프로그래밍 학습에 왕도는 없다! 내가 컴퓨터를 닮아갈때까지!

0개의 댓글