본문 바로가기

알고리즘/프로그래머스

[프로그래머스]Lv2. 조건에 부합하는 중고거래 상태 조회하기(SQL)

https://school.programmers.co.kr/learn/courses/30/lessons/164672

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 접근

 

 

STATUS를 바꾸는 부분이 테이블의 내용을 바꾸는 부분이기 때문에 UPDATE문의 사용이 필요할 것 같았다.

=> UPDATE 할 권한이 주어지지 않아서 오류 발생 

 

 CASE WHEN 구문

  • 새로운 열 생성
SELECT CASE WHEN 기존 열 = 조건 THEN '값1'
WHEN 기존 열 = 조건2 THEN '값2'
ELSE '값N' END AS 새로운 열

 

코드 

 

틀린 코드

-- 코드를 입력하세요
UPDATE USED_GOODS_BOARD
SET STATUS = '판매중'
WHERE STATUS = 'SALE';

UPDATE USED_GOODS_BOARD
SET STATUS = '거래완료'
WHERE STATUS = 'DONE';

SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, STATUS
FROM USED_GOODS_BOARD
WHERE CREATED_DATE = '2022-10-04'
ORDER BY BOARD_ID DESC;

 

수정 코드

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-04'
ORDER BY BOARD_ID DESC;