프로그래머스
[프로그래머스] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기
ys.k
2024. 1. 15. 22:53
포스팅에 앞서 내용이 틀릴 수 있습니다.
해당 부분 지적 감사히 받습니다.
문제를 보자.
솔직히, 나는 sql injection도 공부해 보고, 프로젝트마다 백엔드 개발을 담당하여 db설계 및 여러 가지 작업을 해봐서 sql은 어느 정도 자신 있었다.
그래봤자 현업에 계신 분들보단 한참 못 미치겠지만..
근데 이 문제 풀이를 찾아보다가 신박한 풀이를 찾았다.
쿼리
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
max() 함수를 문자열에 사용하여, '대여가능'과 '대여중'의 사전순으로 대여 중을 출력하게 하는 신박한 풀이를 보았다...
역시 창의력과 기본이 가장 중요한 것 같다..
[프로그래머스 | SQL] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기
프로그래머스_자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기
velog.io