SELECT BOARD_ID, WRITER_ID, TITLE, PRICE,
CASE
WHEN 'DONE' = STATUS THEN '거래완료'
WHEN 'SALE' = STATUS THEN '판매중'
WHEN 'RESERVED' = STATUS THEN '예약중'
END AS STATUS
FROM USED_GOODS_BOARD
WHERE TRUNC(CREATED_DATE) = TO_DATE('2022-10-5', 'YYYY-MM-DD')
ORDER BY BOARD_ID DESC
;
<포인트 정리>
1. TRUNC 함수 및 SQL 문법 규칙
SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, STATUS
FROM USED_GOODS_BOARD
WHERE TRUNC(CREATED_DATE) = TO_DATE('2022-10-5', 'YYYY-MM-DD');
여기서 마지막 줄을
WHERE '2022-10-5' IN TO_CHAR(CREATED_DATE, 'YYYY-MM-DD')
이렇게 하면 안된다.(SQL 문법상 안된다는 듯 하다.)
저기서 TRUNC함수를 사용하면 DATE 형식의 데이터에서 시간만 없애준다.
2. CASE문에서 여러 조건 시 ',' 사용하면 안됨.
오류남. 그냥 줄 건너뛰면 됨.
'DataEngineering' 카테고리의 다른 글
SQL 프로그래머스 문제 - 카테고리 별 상품 개수 구하기 (0) | 2024.05.14 |
---|---|
SQL 프로그래머스 문제 - 자동차 평균 대여 기간 구하기 (0) | 2024.05.14 |
SQL 프로그래머스 문제 - 중복 제거하기 (0) | 2024.05.14 |
SQL 프로그래머스 문제 - 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2024.05.14 |
SQL 프로그래머스 문제 - 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2024.05.14 |