본문 바로가기
데이터베이스(SQL)/프로그래머스

[프로그래머스] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (SQL)

by char_lie 2023. 4. 17.
반응형

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

 

프로그래머스

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

programmers.co.kr

자동차 종류별 특정 옵션이 포함된 자동차 수 구하기 문제

통풍시트, 열선시트, 가죽시트 중 하나 이상의 옵션이 포함된 자동차가 종류 별로 몇 대 인지 출력하는 SQL문을 작성하는 문제

기본 SQL문과 Like, or을 이용해서 해결할 수 있었다.

📌문제 접근 포인트

1. 요구조건이 자동차가 몇 대인지를 출력하는 것이므로 SELECT문에는 CAR_TYPE과 count(*)이 해당된다.
2. 가져와야하는 테이블의 이름이 CAR_RENTAL_COMPANY_CAR 이므로 FROM에는 CAR_RENTAL_COMPANY_CAR이 들어간다.
3. 요구 조건에 통풍시트, 열선시트, 가죽시트 중 하나 옵션 이상이 포함되어야 하므로 like 절을 이용해 각각의 옵션을 찾아주고, 1개 이상 포함되면 되므로 or로 이어주었다.
4. 자동차의 종류 별로 구분해야 하므로 GROUP BY에 CAR_TYPE를 지정해 주었다.
5. 자동차의 종류를 기준으로 오름차순 정렬해야 하므로 ORDER BY를 이용해 정렬해 주었다.
SELECT CAR_TYPE, count(*) as CARS
FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트%' OR OPTIONS LIKE '%통풍시트%'
GROUP BY CAR_TYPE
ORDER BY CAR_TYPE;
반응형

댓글