๊ด€๋ฆฌ ๋ฉ”๋‰ด

Jerry

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL ๊ณ ๋“์  Kit] ์˜คํ”„๋ผ์ธ/์˜จ๋ผ์ธ ํŒ๋งค ๋ฐ์ดํ„ฐ ํ†ตํ•ฉํ•˜๊ธฐ ๋ณธ๋ฌธ

Problem Solving/SQL ๋ฌธ์ œ ํ’€๊ธฐ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/SQL ๊ณ ๋“์  Kit] ์˜คํ”„๋ผ์ธ/์˜จ๋ผ์ธ ํŒ๋งค ๋ฐ์ดํ„ฐ ํ†ตํ•ฉํ•˜๊ธฐ

juicyjerry 2023. 11. 1. 15:36
๋ฐ˜์‘ํ˜•

๐Ÿ’ช๋ฌธ์ œ
ONLINE_SALE ํ…Œ์ด๋ธ”๊ณผ OFFLINE_SALE ํ…Œ์ด๋ธ”์—์„œ 2022๋…„ 3์›”์˜ ์˜คํ”„๋ผ์ธ/์˜จ๋ผ์ธ ์ƒํ’ˆ ํŒ๋งค ๋ฐ์ดํ„ฐ์˜ ํŒ๋งค ๋‚ ์งœ, ์ƒํ’ˆID, ์œ ์ €ID, ํŒ๋งค๋Ÿ‰์„ ์ถœ๋ ฅํ•˜๋Š” SQL๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. OFFLINE_SALE ํ…Œ์ด๋ธ”์˜ ํŒ๋งค ๋ฐ์ดํ„ฐ์˜ USER_ID ๊ฐ’์€ NULL ๋กœ ํ‘œ์‹œํ•ด์ฃผ์„ธ์š”. ๊ฒฐ๊ณผ๋Š” ํŒ๋งค์ผ์„ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์‹œ๊ณ  ํŒ๋งค์ผ์ด ๊ฐ™๋‹ค๋ฉด ์ƒํ’ˆ ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ, ์ƒํ’ˆID๊นŒ์ง€ ๊ฐ™๋‹ค๋ฉด ์œ ์ € ID๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•ด์ฃผ์„ธ์š”.

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

 

 

๐Ÿ’ช ๋‚˜์˜ ์ •๋‹ต

(SELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT
FROM ONLINE_SALE
WHERE YEAR(SALES_DATE) = 2022 AND MONTH(SALES_DATE) = 3
UNION 
SELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d'), PRODUCT_ID, NULL AS USER_ID, SALES_AMOUNT
FROM OFFLINE_SALE
WHERE YEAR(SALES_DATE) = 2022 AND MONTH(SALES_DATE) = 3)
ORDER BY SALES_DATE ASC, PRODUCT_ID ASC, USER_ID;



 

 

๐Ÿ’ช ๋‹ค๋ฅธ ์ •๋‹ต

(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'), 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;



 

 

๐Ÿ’ช ๋ฐฐ์šด ์ 

- JOIN๊ณผ UNION์˜ ์ฐจ์ด์ 

> INNER JOIN๊ณผ UNION์€ ์„œ๋กœ ๋‹ค๋ฅธ ์šฉ๋„๋ฅผ ๊ฐ€์ง€๋ฉฐ, INNER JOIN์€ ๋ฐ์ดํ„ฐ์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒฐํ•ฉํ•  ๋•Œ ์‚ฌ์šฉ๋˜๊ณ , UNION์€ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

 

 

๐Ÿ’ช ๋งˆ์น˜๋ฉด์„œ

๋‹ค์Œ์—๋Š” ๋‹ค๋ฅธ ๋ฌธ์ œ๋กœ ์ฐพ์•„๋ต™๊ฒ ์Šต๋‹ˆ๋‹ค!

์•ˆ๋…• :))

 

 

 

 

๋ฐ˜์‘ํ˜•