조건에 맞는 도서와 저자 리스트 출력하기

다음은 어느 한 서점에서 판매중인 도서들의 도서 정보(BOOK), 저자 정보(AUTHOR) 테이블입니다.

BOOK 테이블은 각 도서의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다.

AUTHOR 테이블은 도서의 저자의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다.

경제 카테고리에 속하는 도서들의 도서 ID(BOOK_ID), 저자명(AUTHOR_NAME), 출판일(PUBLISHED_DATE) 리스트를 출력하는 SQL문을 작성해주세요.

결과는 출판일을 기준으로 오름차순 정렬해주세요.

조건에 맞는 도서와 저자 리스트 출력하기Lv.2

144854

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

해설

BOOK 테이블과 AUTHOR 테이블을 조인하여 "경제" 카테고리에 속하는 도서의 정보를 검색하는 쿼리입니다. 아래는 이 쿼리의 해설입니다.

  • Name
    SELECT BOOK.BOOK_ID, AUTHOR.AUTHOR_NAME, DATE_FORMAT(BOOK.PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATE
    Type
    Description
    • DATE_FORMAT(BOOK.PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATE는 BOOK 테이블의 PUBLISHED_DATE 열을 선택하고, 선택한 날짜를 'YYYY-MM-DD' 형식으로 포맷팅한 후, 결과 열의 이름을 PUBLISHED_DATE로 지정합니다.
  • Name
    INNER JOIN AUTHOR ON BOOK.AUTHOR_ID = AUTHOR.AUTHOR_ID
    Type
    Description

    INNER JOIN 절은 BOOK 테이블과 AUTHOR 테이블을 AUTHOR_ID 열을 기준으로 내부 조인합니다. 이렇게 함으로써 각 도서의 저자 정보를 가져옵니다.

  • Name
    WHERE CATEGORY LIKE '경제%'
    Type
    Description

    WHERE 절은 행을 필터링하는 조건을 지정합니다.

    • 이 경우 "경제"로 시작하는 카테고리를 가진 도서를 선택하기 위해 CATEGORY 열이 "경제"로 시작하는지를 확인하는 조건을 사용합니다.
  • Name
    ORDER BY PUBLISHED_DATE
    Type
    Description

    ORDER BY 절은 결과 행의 정렬 순서를 지정합니다.

    • 이 경우 PUBLISHED_DATE 열을 기준으로 오름차순으로 정렬합니다. 따라서 가장 이른 출판일을 가진 도서부터 나열됩니다.

경제 카테고리에 속한 도서를 출판일 순서로 정렬하여 검색하고, 각 도서의 ID, 저자 이름, 포맷팅된 출판일을 결과로 반환합니다.

조건에 맞는 도서와 저자 리스트 출력하기

SELECT
    BOOK.BOOK_ID, AUTHOR.AUTHOR_NAME, DATE_FORMAT(BOOK.PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATE
FROM
    BOOK
INNER JOIN
    AUTHOR ON BOOK.AUTHOR_ID = AUTHOR.AUTHOR_ID
WHERE
    CATEGORY LIKE "경제%"
ORDER BY
    PUBLISHED_DATE;