๐ข ๋ณธ ํฌ์คํ ์ ํ์ฉ๋๋ ๊ธฐ๋ณธ ๋ฌธ์ ๋ฐ ์๋ฃ ์ถ์ฒ๋
ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ
์คํธ ์ฐ์ต,
https://school.programmers.co.kr/learn/challenges?page=1&languages=mysql%2Coracle์์ ๋ฐํ๋๋ค.
โ ๋ฌธ์
๋ฌธ์ ์ค๋ช
๋ค์์ ์ด๋ ์๋์ฐจ ๋์ฌ ํ์ฌ์์ ๋์ฌ์ค์ธ ์๋์ฐจ๋ค์ ์ ๋ณด๋ฅผ ๋ด์ CAR_RENTAL_COMPANY_CAR ํ ์ด๋ธ์ ๋๋ค. CAR_RENTAL_COMPANY_CAR ํ ์ด๋ธ์ ์๋์ ๊ฐ์ ๊ตฌ์กฐ๋ก ๋์ด์์ผ๋ฉฐ, CAR_ID, CAR_TYPE, DAILY_FEE, OPTI ONS ๋ ๊ฐ๊ฐ ์๋์ฐจ ID, ์๋์ฐจ ์ข ๋ฅ, ์ผ์ผ ๋์ฌ ์๊ธ(์), ์๋์ฐจ ์ต์ ๋ฆฌ์คํธ๋ฅผ ๋ํ๋ ๋๋ค.
Column name | Type | Nullable |
CAR_ID | INTEGER | FALSE |
CAR_TYPE | VARCHAR(255) | FALSE |
DAILY_FEE | INTEGER | FALSE |
OPTIONS | VARCHAR(255) | FALSE |
์๋์ฐจ ์ข ๋ฅ๋ '์ธ๋จ', 'SUV', '์นํฉ์ฐจ', 'ํธ๋ญ', '๋ฆฌ๋ฌด์ง' ์ด ์์ต๋๋ค. ์๋์ฐจ ์ต์ ๋ฆฌ์คํธ๋ ์ฝค๋ง(',')๋ก ๊ตฌ๋ถ๋ ํค์๋ ๋ฆฌ์คํธ(์ต์ ๋ฆฌ์คํธ ๊ฐ ์์: '์ด์ ์ํธ', '์ค๋งํธํค', '์ฃผ์ฐจ๊ฐ์ง์ผ์')๋ก ๋์ด์์ผ๋ฉฐ, ํค์๋ ์ข ๋ฅ๋ '์ฃผ์ฐจ๊ฐ์ง์ผ์', '์ค๋งํธํค', '๋ค๋น๊ฒ์ด์ ', 'ํตํ์ํธ', '์ด์ ์ํธ', 'ํ๋ฐฉ์นด๋ฉ๋ผ', '๊ฐ์ฃฝ์ํธ' ๊ฐ ์์ต๋๋ค.
๋ฌธ์
CAR_RENTAL_COMPANY_CAR ํ ์ด๋ธ์์ 'ํตํ์ํธ', '์ด์ ์ํธ', '๊ฐ์ฃฝ์ํธ' ์ค ํ๋ ์ด์์ ์ต์ ์ด ํฌํจ๋ ์๋์ฐจ๊ฐ ์๋์ฐจ ์ข ๋ฅ ๋ณ๋ก ๋ช ๋์ธ์ง ์ถ๋ ฅํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ์๋์ฐจ ์์ ๋ํ ์ปฌ๋ผ๋ช ์ CARS๋ก ์ง์ ํ๊ณ , ๊ฒฐ๊ณผ๋ ์๋์ฐจ ์ข ๋ฅ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌํด์ฃผ์ธ์.
โ ํ์ด
๋ฌธ์ ์๊ตฌ์ฌํญ
'ํตํ์ํธ', '์ด์ ์ํธ', '๊ฐ์ฃฝ์ํธ' ์ค ํ๋ ์ด์์ ์ต์
์ด ํฌํจ๋ ์๋์ฐจ๊ฐ ์๋์ฐจ ์ข
๋ฅ ๋ณ๋ก ๋ช ๋์ธ์ง ์ถ๋ ฅ
> WHERE ์กฐ๊ฑด : ํด๋น ๋ฌธ์์ด์ ํฌํจํ๋ ์กฐ๊ฑด ๋ถ์ฌ ๋จ ํ๋ ์ด์์ด๋ผ๊ณ ํ์ผ๋ฏ๋ก 'OR' ์กฐ๊ฑด์ผ๋ก
์๋์ฐจ ์์ ๋ํ ์ปฌ๋ผ๋ช ์ CARS๋ก ์ง์ > ์ง๊ณ ํ ์ปฌ๋ผ ๋ณ์นญ ์ฌ์ฉ
๊ฒฐ๊ณผ๋ ์๋์ฐจ ์ข ๋ฅ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ > ์ ๋ ฌ์กฐ๊ฑด
SELECT CAR_TYPE, COUNT(*) CARS
FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%ํตํ์ํธ%' OR OPTIONS LIKE '%์ด์ ์ํธ%' OR OPTIONS LIKE '%๊ฐ์ฃฝ์ํธ%'
GROUP BY 1
ORDER BY 1;