본문 바로가기
Stay Hungry Stay Foolish/SQL

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

by HANNI하니 2023. 6. 9.

사용 언어 - MYSQL

프로그래머스 LV 4) 오프라인/온라인 판매 데이터 통합하기

 

프로그래머스

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

programmers.co.kr

 

 

정답

UNION 절 (정답 맞춘 여부 X) 

JOIN이 아니라 UNION 사용하는 문제

JOIN으로 테이블을 합치려고 했는데, 같은 칼럼들이 있기 때문에 불가능

UNION으로 각각 조건을 걸어주고 마지막에 ORDER BY 정렬을 진행한다.

(SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT
FROM ONLINE_SALE AS N
WHERE SALES_DATE LIKE '2022-03%'
 
UNION
 
SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") AS SALES_DATE, PRODUCT_ID, NULL AS USER_ID, SALES_AMOUNT
FROM OFFLINE_SALE AS F
WHERE SALES_DATE LIKE '2022-03%')

ORDER BY SALES_DATE, PRODUCT_ID, USER_ID

 

 

레퍼런스

  • 정답 깃허브
 

GitHub - yyeongeun/codingtest: 코딩테스트 공부

코딩테스트 공부. Contribute to yyeongeun/codingtest development by creating an account on GitHub.

github.com

 

'Stay Hungry Stay Foolish > SQL' 카테고리의 다른 글

[MYSQL] 최댓값 구하기  (0) 2023.06.09
[MYSQL] 가장 비싼 상품 구하기  (0) 2023.06.09
[MYSQL] 동물의 아이디와 이름  (0) 2023.06.09
[MYSQL] 어린 동물 찾기  (0) 2023.06.09
[MYSQL] 아픈 동물 찾기  (0) 2023.06.09

댓글