문제 및 해답
BOOK 테이블에서 2021년에 출판된 '인문' 카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일 (PUBLISHED_DATE)을 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요.
SELECT BOOK_ID, SUBSTRING(PUBLISHED_DATE, 1, 10) AS PUBLISHED_DATE
FROM BOOK
WHERE CATEGORY = '인문'
AND PUBLISHED_DATE like '2021%'
ORDER BY PUBLISHED_DATE;
- 문제에서 PUBLISHED_DATE는 2021-01-18 00:00:00과 같이 구성되었다. 이때 2021년에 출판되었는지 찾아내기 위해 like문을 활용했다.
- 정렬은 기본값이 오름차순이므로 ASC를 사용하지 않았다. 만약 내림차순 정렬을 하고 싶다면 DESC를 사용하면 된다.
- 문제의 요구사항에서 PUBLISHED_DATE는 2021-01-18과 같이 나오도록 요구했다. 따라서 2021-01-18 00:00:00의 부분 문자열을 가져와야 하므로 SUBSTRING 함수를 사용했다.