일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- iPortfolio
- foldindexed
- filternot
- 다시정리하기
- 코틀린
- 다시 정리해야함
- Filter
- 알고리즘 인증
- 알고리즘 인증_1주차
- array랑 list
- 코딩테스트
- 알고리즘 인증_2주차
- 다시봐
- recyclerview
- 취준기록
Archives
- Today
- Total
Moments of growth
[MySQL] 오프라인/온라인 판매 데이터 통합하기 _ UNION 본문
SELECT DATE_FORMAT(SALES_DATE,'%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, IFNULL(USER_ID, NULL) AS USER_ID, SALES_AMOUNT
FROM (
SELECT SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT FROM ONLINE_SALE
UNION
SELECT SALES_DATE, PRODUCT_ID, NULL, SALES_AMOUNT FROM OFFLINE_SALE
) AS T
WHERE SALES_DATE LIKE '2022-03%'
ORDER BY SALES_DATE, PRODUCT_ID, USER_ID
주의) FROM에서 UNION 한 테이블의 이름을 꼭 붙여줘야한다! -> 여기서는 AS T로 붙였음
UNION 연산자와 UNION ALL 연산자는 두 개 이상에 SQL 쿼리를 하나로 만들어주지만 차이나는 부분은 중복여부이다.
UNION 연산자를 사용할 시에는 각 쿼리에 컬럼 갯수 및 명칭을 맞춰줘야 되며 그렇지 않으면 오류가 발생한다.
Comments