# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/144856 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ 2022๋
1์์ ๋์ ํ๋งค ๋ฐ์ดํฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ์ ๋ณ, ์นดํ
๊ณ ๋ฆฌ ๋ณ ๋งค์ถ์ก(TOTAL_SALES = ํ๋งค๋ * ํ๋งค๊ฐ) ์ ๊ตฌํ์ฌ, ์ ์ ID(AUTHOR_ID), ์ ์๋ช
(AUTHOR_NAME), ์นดํ
๊ณ ๋ฆฌ(CATEGORY), ๋งค์ถ์ก(SALES) ๋ฆฌ์คํธ๋ฅผ ์ถ๋ ฅํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ๊ฒฐ๊ณผ๋ ์ ์ ID๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก, ์ ์ ID๊ฐ ๊ฐ๋ค๋ฉด ์นดํ
๊ณ ๋ฆฌ๋ฅผ ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌํด์ฃผ์ธ์..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/133027 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ํ
์ด๋ธ 2๊ฐ๊ฐ ์์๋ ๊ฐ๊ฐ์ ๋ง์ ๋ํด์ total_order๋ฅผ ๋ํ๊ณ ์์ 3๊ฐ ์ถ๋ ฅํ๊ธฐ # ํท๊ฐ๋ ธ๋ ์ shipment_id๋ฅผ ์ด์ฉํด์ ์กฐ์ธ์ผ๋ก on์์ ์ฌ์ฉํ๋ ค๊ณ ํ ๋ ์ค๋ฅ๊ฐ ๋์จ๋ค ๋ฌธ์ ์ ์์์์๋ strawberry๋ผ๋ ๋ง์ผ๋ก ํ์๋ ํ
์ด๋ธ A์์๋ shipment_id ๋ฐ flavor๊ฐ (109, strawberry) ์ด๊ณ ํ
์ด๋ธ B์์๋ (109, straw..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/62284 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ๋ฐ์ดํฐ ๋ถ์ ํ์์๋ ์ฐ์ (Milk)์ ์๊ฑฐํธ(Yogurt)๋ฅผ ๋์์ ๊ตฌ์
ํ ์ฅ๋ฐ๊ตฌ๋๊ฐ ์๋์ง ์์๋ณด๋ ค ํฉ๋๋ค. # ๋ฌธ์ ์ ๋ต select cart_id from cart_products where name = 'Milk' and cart_id in (select cart_id from cart_products where name = 'Yogurt') order by 1
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/77487 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ์ด ์๋น์ค์์๋ ๊ณต๊ฐ์ ๋ ์ด์ ๋ฑ๋กํ ์ฌ๋์ "ํค๋น ์ ์ "๋ผ๊ณ ๋ถ๋ฆ
๋๋ค. ํค๋น ์ ์ ๊ฐ ๋ฑ๋กํ ๊ณต๊ฐ์ ์ ๋ณด๋ฅผ ์์ด๋ ์์ผ๋ก ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. # ํท๊ฐ๋ ธ๋ ๋ถ๋ถ ์๋ธ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ฟผ๋ฆฌ๋ฅผ ํ ๋ฒ์ ์ฐ๋ฉด ์ด๋ฐ ๊ฒฐ๊ณผ๊ฐ ๋์จ๋ค select id, name, host_id from places group by host_id having count(*) >= 2 ..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/157342 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ํ๊ท ๋์ฌ ๊ธฐ๊ฐ์ด 7์ผ ์ด์์ธ ์๋์ฐจ ์ถ๋ ฅ # ๋ฌธ์ ์์ ํท๊ฐ๋ ธ๋ ๋ถ๋ถ # ๋ฌธ์ ์์ ๋ ์ง๋ณ ์ฐจ์ด ๊ตฌํ๊ธฐ datediff(end_date, start_date)๋ฅผ ํ๋ค๋ฉด ๊ทธ๋ฆผ์ history๊ฐ 1, car_id ์์๋ 4๊ฐ ๋์จ๋ค -> ๋จ์ํ ๋ ๋ ์ง์ ์ฐจ์ด ํ์ง๋ง ๋ฌธ์ ์์๋ ๋์ฌ ๊ธฐ๊ฐ์ด 5๋ก ๋์จ๋ค -> ๋ฌธ์ ์์์ ๋์ฌ ๊ธฐ๊ฐ์ด๋ ์์ ๋ ์ง์ ์๋ฃ ๋ ์ง๊น์ง ํฌํจ์ํจ๋ค ์ฐ๋ฆฌ๊ฐ ..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/151138 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ์์ ๋ ์ง์ ๋ ๋ ์ง์ ์ฐจ์ด๋ฅผ ๊ตฌํ๊ณ '์ฅ๊ธฐ๋์ฌ' ์ '๋จ๊ธฐ๋์ฌ' ๊ตฌ๋ณ # ํต์ฌ ๊ฐ๋
datediff(end_date, start_date) ๊ทธ ์ธ ์์ด๋จ์ด ์
๋ ฅ ์ค์ ์กฐ์ฌํ๊ธฐ # ์ ๋ต ์ฝ๋ select history_id, car_id, date_format(start_date, '%Y-%m-%d') start_date, date_format(end_date, '%Y-%..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/12915 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ๋ฌธ์์ด๋ก ๊ตฌ์ฑ๋ ๋ฆฌ์คํธ strings์, ์ ์ n์ด ์ฃผ์ด์ก์ ๋, ๊ฐ ๋ฌธ์์ด์ ์ธ๋ฑ์ค n๋ฒ์งธ ๊ธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ๋ ค ํฉ๋๋ค. ์๋ฅผ ๋ค์ด strings๊ฐ ["sun", "bed", "car"]์ด๊ณ n์ด 1์ด๋ฉด ๊ฐ ๋จ์ด์ ์ธ๋ฑ์ค 1์ ๋ฌธ์ "u", "e", "a"๋ก strings๋ฅผ ์ ๋ ฌํฉ๋๋ค. # ํต์ฌ ๊ฐ๋
๊ฐ์ ์ํ๋ฒณ์ ๊ฐ์ง๊ณ ์์๋ ์ฌ์ ์์ผ๋ก ์ถ๋ ฅํด์ผ ํ๋ฏ๋ก ๋จผ์ ..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/131532 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ์ฒดํฌํ์ ๋์ด์๋ ๋ถ๋ถ์ ์ ๋
ํ๋ฉด์ ๋ฌธ์ ๋ฅผ ํ ๊ฒ ๋ง์ฝ ๊ทธ๋ฅ ์ง๋์ณค๋ค๋ฉด ์ ๋ต ํ์ ์ ๋ฐ๊ธฐ ํ๋ค๊ฒ์ด๋ค 1) ๋์ผํ ๋ ์ง, ํ์ ID, ์ํ ID ์กฐํฉ์ ๋ํด์๋ ํ๋์ ํ๋งค ๋ฐ์ดํฐ๋ง ์กด์ฌํฉ๋๋ค. ๋ฌธ์ USER_INFO ํ
์ด๋ธ๊ณผ ONLINE_SALE ํ
์ด๋ธ์์ ๋
, ์, ์ฑ๋ณ ๋ณ๋ก ์ํ์ ๊ตฌ๋งคํ ํ์์๋ฅผ ์ง๊ณํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ๊ฒฐ๊ณผ๋ ๋
, ์, ์ฑ๋ณ์ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/157340 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ๊ฐ ์๋์ฐจ๊ฐ 2022๋
10์ 16์ผ์ ๋์ฌ์ค์ด์๋ ๊ธฐ๋ก์ด ์๋์ง๋ฅผ ํ์ธ ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ ์์ ๋ ์ง์ ๋ฐ๋ฉ ๋ ์ง๊ฐ ์์ ๋ง์ฝ ์์ ๋ ์ง์ ๋ฐ๋ฉ ๋ ์ง ์ฌ์ด์ 2022-10-16์ด ์๋ค๋ฉด(ํฌํจ์) ๋์ฌ์ค ๊ทธ๊ฒ ์๋๋ผ๋ฉด ๋์ฌ ๊ฐ๋ฅ ์ผ ๊ฒฝ์ฐ ์ผ๋จ ์ฌ๊ธฐ์๋ถํฐ. ์ฌ๋ฌ๊ฐ์ car_id๊ฐ ์ค ๊ฐ์ car_id๊ฐ๋ผ๋ฆฌ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ค์ด ์ฐ์ฐ ํ ์ถ๋ ฅํ์๋ค group by ์ฌ์ฉ์ด์ !!..
# ๋ฌธ์ https://school.programmers.co.kr/learn/courses/30/lessons/132204 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr # ๋ฌธ์ ์์ฝ ํ
์ด๋ธ 3๊ฐ ์กฐ์ธ์ํค๊ธฐ # ํท๊ฐ๋ ธ๋ ๋ถ๋ถ 3๊ฐ์ ํ
์ด๋ธ์์ ๊ฐ๊ฐ์ ์ปฌ๋ผ๋ช
์ด ๋ค๋ฅด๋ฉด์ ์กฐ์ธ์ ํ๋ ค๊ณ ํ ๋ ํท๊ฐ๋ ธ๋ ๋ถ๋ถ์ด ์์๋ค ๋ฟ๋ง ์๋๋ผ ์ถ๋ ฅ์ ๊ฐ ์ปฌ๋ผ๋ช
์ ์ ๋ณด๊ณ ์ ๋ ๋ฐ ์ ์ํด์ผ๊ฒ ๋ค # ํ
์ด๋ธ a์ ํ
์ด๋ธ b์ ํ
์ด๋ธ c ์กฐ์ธ์ํค๊ธฐ select * from ํ
์ด๋ธa a inner join ํ
์ด๋ธb b on a.key = b.key inner join ํ
์ด๋ธc c ..