문제
입력 코드
1. MAX
SELECT
CAR_ID,
MAX(CASE
WHEN '2022-10-16' BETWEEN DATE_FORMAT(START_DATE, '%Y-%m-%d')
AND DATE_FORMAT(END_DATE, '%Y-%m-%d')
THEN '대여중'
ELSE '대여 가능'
END) AS 'AVAILABILITY'
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
ORDER BY CAR_ID DESC;
SELECT
CAR_ID,
MAX(CASE WHEN '2022-10-16' BETWEEN START_DATE AND END_DATE
THEN '대여중' ELSE '대여 가능'
END) AS AVAILABILITY
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
ORDER BY CAR_ID DESC;
2. SUBQUERY
SELECT CAR_ID,
CASE
WHEN CAR_ID IN (
SELECT CAR_ID
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
WHERE '2022-10-16' BETWEEN START_DATE AND END_DATE)
THEN '대여중'
ELSE '대여 가능'
END AS AVAILABILITY
FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY
GROUP BY CAR_ID
ORDER BY CAR_ID DESC;
코드 설명
#SELECT #MAX #DATE_FORMAT #CASE #WHERE #BETWEEN #GROUP BY #ORDER BY #SUBQUERY
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/157340
'SQL' 카테고리의 다른 글
#69. JOIN : 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.28 |
---|---|
#68. JOIN : 주문량이 많은 아이스크림들 조회하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.28 |
#50. GROUP BY : 카테고리 별 도서 판매량 집계하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.14 |
#49. GROUP BY : 조건에 맞는 사용자와 총 거래금액 조회하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.13 |
#48. GROUP BY : 즐겨찾기가 가장 많은 식당 정보 출력하기 | 프로그래머스 | SQL 고득점 Kit (0) | 2023.08.13 |