(프로그래머스) Lv.3 조건에 부합하는 중고거래 상태 조회하기

chaechae·2023년 6월 2일
0

코딩테스트(SQL) 

목록 보기
13/22
post-thumbnail

(오랜만에 프로그래머스 문제입니다😀!)

LV.3 조건에 부합하는 중고거래 상태 조회하기
문제 )
USED_GOODS_BOARD 테이블에서 2022년 10월 5일에 등록된 중고거래 게시물의 게시글 ID, 작성자 ID, 게시글 제목, 가격, 거래상태를 조회하는 SQL문을 작성해주세요. 거래상태가 SALE 이면 판매중, RESERVED이면 예약중, DONE이면 거래완료 분류하여 출력해주시고, 결과는 게시글 ID를 기준으로 내림차순 정렬해주세요.
(자세한 문제내용과 테이블내용은 프로그래머스에 있습니다.)

💻code


SELECT BOARD_ID
    , WRITER_ID
    , TITLE
    , PRICE
    , CASE WHEN STATUS = 'SALE' THEN '판매중' 
        WHEN STATUS = 'RESERVED' THEN '예약중'
        ELSE '거래완료' END AS STATUS
FROM USED_GOODS_BOARD
WHERE CREATED_DATE = '2022-10-05' 
ORDER BY BOARD_ID DESC

위 문제의 핵심은 CASE WHEN 또는 IF 문을 이용하여 해당 STATUS를 조건에 맞게 처리하는 것
만약, IF 문 사용시 아래와 같이 중첩하여 써야한다.

SELECT BOARD_ID
    , WRITER_ID
    , TITLE
    , PRICE
    , IF (STATUS = 'SALE', "판매중", IF(STATUS = 'RESERVED', "예약중", "거래완료"))  AS STATUS
FROM USED_GOODS_BOARD
WHERE CREATED_DATE = '2022-10-05' 
ORDER BY BOARD_ID DESC
profile
게임 혹은 다양한 컨텐츠가 있는 곳을 좋아합니다. 시리즈를 참고하시면 편하게 글을 보실 수 있습니다🫠

0개의 댓글