๋ฐ์ํ
๐ฑ ๋ฌธ์
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
๐ฑ ํ์ด
- WHERE์ FROM์ ๋ฌถ์ธ๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ฒ์์ WHERE ์ ์ด ๋ชจ๋ SELECT ์ ์ ํ๊บผ๋ฒ์ ์กฐ๊ฑด์ ์ ์ฉ์ํจ๋ค๊ณ ์๊ฐํ๊ณ , WHERE ์ ์ ๋ง์ง๋ง์๋ง ์ ์ด์ฃผ์๋๋ ํ๋ ธ์ต๋๋ค. SELECT์ ๋ง๋ค WHERE์ ์กฐ๊ฑด์ ๊ฑธ์ด์ฃผ๋๋กํฉ๋๋ค!
- UNION์ 2๊ฐ ์ด์์ ํ ์ด๋ธ์ ์กด์ฌํ๋ ๊ฐ์ ์ฑ๊ฒฉ์ ๊ฐ์ ํ๋์ ์ฟผ๋ฆฌ๋ก ์ถ์ถํ ๋ ์ฌ์ฉํฉ๋๋ค. ์ฝ๊ฒ ๋งํด์, SELECT์ SELECT๋ฅผ ์ธ๋ก๋ก ๋ถ์ฌ์ค๋๋ค.
NULL AS USER_ID
ONLINE_SALE
์๋USER_ID
๊ฐ ์์ง๋ง,OFFLINE_SALE
์๋USER_ID
๊ฐ ์์ต๋๋ค. UNION ์ฐ์ฐ์ ํ๊ธฐ ์ํด์๋ ๋๊ฐ์ ํ ์ด๋ธ์ ์ปฌ๋ผ๋ช ๊ณผ ์ปฌ๋ผ๊ฐ์๊ฐ ๊ฐ์์ผํฉ๋๋ค. ๋ฐ๋ผ์OFFLINE_SALE
์ SELECT ์ ์์๋ 'USER_ID
' ์ด๋ฆ์ผ๋ก ํ๋ NULL ์ปฌ๋ผ์ ๋ง๋ค์ด์ค๋๋ค.
๐ฑ ์ฝ๋
SELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT
FROM ONLINE_SALE
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
WHERE SALES_DATE LIKE '2022-03-%'
ORDER BY SALES_DATE ASC, PRODUCT_ID ASC, USER_ID ASC
๋ฐ์ํ
'MySQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ์ ์๊ฐ ๊ตฌํ๊ธฐ(2) (MySQL) (0) | 2023.02.17 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ธ์ ์์นํ ์๋น ๋ชฉ๋ก ์ถ๋ ฅํ๊ธฐ (MySQL) (0) | 2023.02.16 |
[ํ๋ก๊ทธ๋๋จธ์ค | MySQL] 3์์ ํ์ด๋ ์ฌ์ฑ ํ์ ๋ชฉ๋ก ์ถ๋ ฅํ๊ธฐ (0) | 2023.01.31 |
[MySQL] ์กฐ๊ฑด๋ฌธ (IF๋ฌธ, CASE๋ฌธ) (0) | 2023.01.31 |
[ํ๋ก๊ทธ๋๋จธ์ค | MySQL] ๊ณผ์ผ๋ก ๋ง๋ ์์ด์คํฌ๋ฆผ ๊ณ ๋ฅด๊ธฐ (0) | 2023.01.31 |
๋๊ธ