💿 Oracle/프로그래머스 Lv. 2
[프로그래머스] 조건에 부합하는 중고거래 상태 조회하기
동일
2023. 6. 23. 17:10
답
SELECT
BOARD_ID, WRITER_ID, TITLE, PRICE,
DECODE(STATUS,'SALE','판매중','RESERVED','예약중','DONE','거래완료') AS STATUS
FROM USED_GOODS_BOARD
WHERE TO_CHAR(CREATED_DATE,'YYYY-MM-DD') = '2022-10-05'
ORDER BY BOARD_ID DESC
1. 2022년 10월 5일에 등록된 게시물
- 날짜형태를 문자열 형태로 변경하여 비교한다.
WHERE TO _CHAR(CREATED_DATE,'YYYY-MM-DD') = '2022-10-05'
2. 게시판 ID 내림차순 정렬
ORDER BY BOARD_ID DESC
3. 상태값에 따른 대체 용어 출력하기
- DECODE를 이용한다.
DECODE(STATUS,'SALE','판매중','RESERVED','예약중','DONE','거래완료') AS STATUS
DECODE에 대한 설명
- ORACLE에서만 사용할 수 있음
- 구조: DECODE(COLUMN, 1, APPLE, 2, BANANA, ORANGE)
- SELECT으로 가져온 컬럼의 값이 1이면 APPLE을 출력, 2이면 BANANA출력, 1도 아니고 2도아니면 ORANGE 출력
- 모든 값에 대해 대체값을 입력했다면 제일 마지막(ORANGE)은 생략해도 된다.