알고리즘/SQL [SQL] SELECT WHEN 이란? - 1. SELECT WHEN 이란? 2. 실제 예시 1. SELECT WHEN 이란? SQL 기본 문법 중 하나로 select 절에서 사용한다. 개발자한테 좀더 와 닿게 설명하면 열을 if 문처럼 경우에 따라 조건을 설정하는 것이다. 두가지의 사용 방법이 존재한다. 2. 실제 예시 1번 과 같은경우는 쉽게 이해할수 있어서 생략 이에 대한 예시로 프로그래머스에서 내용을 참조해왔다. https://school.programmers.co.kr/learn/courses/30/lessons/151138 다음과 같은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블이 있을경우 HISTORY_ID CAR_ID START_DATE END_DATE 1 4 2022-09-27 2022-11-27 2 3 2022-10-03 2022-11-04 3 2 2022-09-05 2022-09-05 4 1 2022-09-01 2022-09-30 5 3 2022-09-16 2022-10-15 START_DATE와 END_DATE 의 차이가 30일 이상인 경우 RENT_TYPE 라는 속성을 만들어 장기 대여 라고 한고 작을경우는 단기 대여라고 하고 싶다. HISTORY_ID CAR_ID START_DATE END_DATE RENT_TYPE 5 3 2022-09-16 2022-10-13 단기 대여 4 1 2022-09-01 2022-09-30 장기 대여 3 2 2022-09-05 2022-09-05 단기 대여 1 4 2022-09-27 2022-10-26 장기 대여 Copy SELECT HISTORY_ID, CAR_ID, DATE_FORMAT (START_DATE,'%Y-%m-%d') AS CAR_ID, DATE_FORMAT(END_DATE,'%Y-%m-%d') AS END_DATE, CASE WHEN DATEDIFF(END_DATE, START_DATE) < 29 then '단기 대여' ELSE '장기 대여' END AS RENT_TYPE FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY 고려해볼수있는 예시들 연령 층 (10대, 20대, 30대) 갯수의 범위 (100단위, 200 단위, 300 단위) 점수에다른 성적및 등급 (A, B, C) 해당 년도 가입자수 (2020년도 가입자 수 ,2021년도 가입자수, 2022년도 가입자수 ) 등등 상황에따라 무궁무진 하게 사용할수있다. 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기달도깨비의 블로그 Contents 1.SELECTWHEN이란? 2.실제예시 당신이 좋아할만한 콘텐츠 [SQL] 프로그래머스 자동차 대여 기록에서 장기/단기 대여 구분하기 2024.02.08 [SQL] 조건에 부합하는 중고거래 상태 조회하기 2024.02.08 [SQL] 프로그래머스 특정 옵션이 포함된 자동차 리스트 구하기 2024.02.06 [SQL] 프로그래머스 조건에 부합하는 중고거래 댓글 조회하기 2024.02.06 댓글 0 + 이전 댓글 더보기