코딩테스트_SQL
250323 프로그래머스 조건에 부합하는 중고거래 상태 조회하기
jihye0e
2025. 3. 23. 22:33
[문제]
USED_GOODS_BOARD 테이블에서 2022년 10월 5일에 등록된 중고거래 게시물의 게시글 ID, 작성자 ID, 게시글 제목, 가격, 거래상태를 조회하는 SQL문 작성하기
거래상태가 SALE 이면 판매중, RESERVED이면 예약중, DONE이면 거래완료 분류하여 출력 & 결과는 게시글 ID를 기준으로 내림차순 정렬
[풀이]
1) BOARD_ID, WRITER_ID, TITLE, PRICE, STATUS 조회
2) CREATED_DATE가 2022-10-05 행 필터링
3) 거래상태 조건문 활용해서 상태별로 출력
4) 게시글 ID 내림차순 정렬
** MySQL의 CASE-WHEN 구문 **
CASE
WHEN 조건1 THEN 값(수식)1
WHEN 조건2 THEN 값(수식)2
ELSE 값(수식)3
END
[정답]
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;