티스토리 뷰
What I Learned/Query Practice
[programmers - MySQL] SELECT: 오프라인/온라인 판매 데이터 통합하기
Interrobang 2023. 8. 1. 21:50문제 링크
문제 풀이
SELECT * FROM (
SELECT
DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE,
PRODUCT_ID,
USER_ID,
SALES_AMOUNT
FROM ONLINE_SALE
UNION
SELECT
DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE,
PRODUCT_ID,
NULL,
SALES_AMOUNT
FROM OFFLINE_SALE
) A
WHERE SALES_DATE LIKE '2022-03%'
ORDER BY SALES_DATE, PRODUCT_ID, USER_ID
*key point: 집합 연산자 UNION을 이용하여 두 테이블을 합친다. 이때 빠진 OFFLINE_SALE 테이블의 USER_ID 부분은 NULL로 채워준다. 합쳐진 테이블을 다시 SELECT 절로 조회하면서 WHERE, ORDER BY 조건을 걸어준다.
'What I Learned > Query Practice' 카테고리의 다른 글
[programmers - MySQL] SELECT: 어린 동물 찾기 (0) | 2023.08.01 |
---|---|
[programmers - MySQL] SELECT: 아픈 동물 찾기 (0) | 2023.08.01 |
[programmers - MySQL] SELECT: 역순 정렬하기 (0) | 2023.08.01 |
[programmers - MySQL] SELECT: 재구매가 일어난 상품과 회원 리스트 구하기 (0) | 2023.08.01 |
[programmers - MySQL] SELECT: 모든 레코드 조회하기 (0) | 2023.08.01 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 17103
- MySQL
- 벡준
- 2903
- 24060
- 항해 플러스
- 13241
- 25501
- Programmers
- 2738
- Wil
- SQL
- programmer
- 24313
- 25192
- 13909
- 5597
- 10807
- 26069
- 백준
- til
- 20920
- 24723
- 항해+
- 1269
- 코육대
- 2053
- 2587
- 4134
- Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함