코딩테스트/SQL

[프로그래머스][MySQL] Lv. 2 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기

_알파카 2024. 8. 5. 16:03
728x90

문제 설명

https://school.programmers.co.kr/learn/courses/30/lessons/151137

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 풀이

SELECT CAR_TYPE, COUNT(car_id) AS CARS
FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%통풍시트%' 
        OR OPTIONS LIKE '%열선시트%' 
        OR OPTIONS LIKE '%가죽시트%'
GROUP BY CAR_TYPE
ORDER BY CAR_TYPE;

 

쉬운 문제이지만, 유의할 점은

 

OPTIONS 열이 컴마(,)를 통해 분리되어 있으므로, 

OPTIONS = '통풍시트' 와 같이 = 연산자를 사용하는 것이 아닌, 

LIKE 연산자를 사용해야 한다는 것이다. 

 

더불어, 문제의 조건은 통풍시트, 열선시트, 가죽시트를 찾고 있는데, 

이는 모두 "시트"라는 말이 들어가므로 아래와 같이도 작성해볼 수 있다. 

 

SELECT CAR_TYPE, COUNT(car_id) AS CARS
FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%시트%' 
GROUP BY CAR_TYPE
ORDER BY CAR_TYPE;

 

728x90