728x90
KDT 실무형 스프링 백엔드 엔지니어 양성과정 6기 | SQL CODEKATA
🚓 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기
🏷 관련 주제 : LIKE OR COUNT()

✔ (Oracle & MySQL) Solution with LIKE, OR, COUNT(*)
SELECT CAR_TYPE
, COUNT(*) CARS
FROM CAR_RENTAL_COMPANY_CAR
WHERE OPTIONS LIKE '%통풍시트%'
OR OPTIONS LIKE '%열선시트%'
OR OPTIONS LIKE '%가죽시트%'
GROUP BY CAR_TYPE
ORDER BY CAR_TYPE;
실행 결과

💥 오늘 만난 문제 & 나의 시도 💦 & 해결 방법 👍
📌 오늘 만난 문제 : CAR_RENTAL_COMPANY_CAR 테이블에서'통풍시트', '열선시트', '가죽시트' 중 하나 이상의 옵션이 포함된 자동차가 자동차 종류 별로 몇 대인지 출력하는 SQL문을 작성해주세요.
이 때, 자동차 수에 대한 컬럼명은 CARS로 지정하고,
결과는 자동차 종류를 기준으로 오름차순 정렬해주세요.
1. CAR_RENTAL_COMPANY_CAR 테이블 조회하기
- Oracle & MySQL
SELECT * FROM CAR_RENTAL_COMPANY_CAR;실행 결과

2. OPTIONS의 데이터가 '통풍시트', '열선시트', '가죽시트' 중 하나 이상의 옵션을 포함하는 인스턴스 조회하기
- Oracle & MySQL
SELECT * FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트%';실행 결과

3. 자동차 종류와 자동차 종류별 인스턴스 수 조회하기
인스턴스 수는자동차 종류로 GROUP BY 후,COUNT(*)함수로 얻을 수 있다.
별칭으로 CARS 주기
- Oracle & MySQL
SELECT CAR_TYPE , COUNT(*) CARS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트%' GROUP BY CAR_TYPE;실행 결과

4. 자동차 종류를 기준으로 오름차순 정렬하기
- Oracle & MySQL
SELECT CAR_TYPE , COUNT(*) CARS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트%' GROUP BY CAR_TYPE ORDER BY CAR_TYPE;실행 결과

💬 무엇을 새롭게 알았는지
LIKE 키워드와 OR 키워드로 WHERE절의 조건을 주는 쿼리를 작성하였다.
GROUP BY하여 집계함수 COUNT(*)로 총 인스턴스 수를 조회하는 쿼리를 작성하였다.
728x90