코딩테스트/SQL 코딩테스트

<프로그래머스> 조건에 맞는 도서와 저자 리스트 출력하기

배또가또 2023. 12. 20. 16:47

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 


  • 문제 요구사항
    • 경제 카테고리에 속하는 도서의 BOOK_ID, 저자명(AUTHOR_NAME), 출판일(PUBLISHED_DATE) 리스트를 출력하는 SQL문 작성
    • 결과는 출판일을 기준으로 오름차순 정렬
    • 출판일의 데이트 포맷이 예시와 동일해야함

 

BOOK 테이블과 AUTHOR테이블을 조인해서 요구되는 칼럼을 조회하되

출판일에 관해서만 포맷을 맞춰주면 문제를 해결할 수 있다.

 

Oracle은 TO_CHAR, MySQL은 DATE_FORMAT을 이용한다.


1) Oracle

SELECT B.BOOK_ID, 
       A.AUTHOR_NAME, 
       TO_CHAR(B.PUBLISHED_DATE, 'YYYY-mm-dd') 
FROM BOOK B INNER JOIN AUTHOR A ON B.AUTHOR_ID = A.AUTHOR_ID
WHERE B.CATEGORY = '경제'
ORDER BY B.PUBLISHED_DATE;

 


2) MySQL

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