본문 바로가기
프로그래머스/SQL

[프로그래머스]Lv.2 조건에 맞는 도서와 저자 리스트 출력하기

by JungSeung 2023. 6. 14.
728x90

https:// labs.mysql.com/common/logos/mysql-logo.svg

문제 설명

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

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

Column name Type Nullable Description
BOOK_ID INTEGER FALSE 도서 ID
CATEGORY VARCHAR(N) FALSE 카테고리 (경제, 인문, 소설, 생활, 기술)
AUTHOR_ID INTEGER FALSE 저자 ID
PRICE INTEGER FALSE 판매가 (원)
PUBLISHED_DATE DATE FALSE 출판일


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

Column name Type Nullable Description
AUTHOR_ID INTEGER FALSE 저자 ID
AUTHOR_NAME VARCHAR(N) FALSE 저자명


문제
'경제' 카테고리에 속하는 도서들의 도서 ID(BOOK_ID), 저자명(AUTHOR_NAME), 출판일(PUBLISHED_DATE) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요.

주의사항
PUBLISHED_DATE의 데이트 포맷이 예시와 동일해야 정답처리 됩니다.

 

풀이 쿼리문 - solution.sql

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

- JOIN 사용해 BOOK, AUTHOR 조인, ON 으로 공통적 조건

- DATE_FORMAT 로 PUBLISHED_DATE 데이트 포맷 맞추고

- WHERE LIKE 로 '경제' 카테고리에 속하는 도서 행 조회

- ORDER BY 출판일 기준 오름차순 정렬

 

문제 출처 : https://school.programmers.co.kr/learn/challenges?order=recent&page=1&languages=mysql&levels=2

 

코딩테스트 연습 | 프로그래머스 스쿨

개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!

school.programmers.co.kr

 

728x90