2025.01.03(Fri.)
사전캠프를 기록하다 보니, 제목을 날짜로 지정하는 것이 효율성이 떨어지는 것을 확인했다.
정작 필요한 자료를 찾으려다 보니, 무슨 내용을 정리한 것인지 확인하기가 어려워,
제목만 봐도 어떤 파트를 공부하는지 알 수 있도록 변경하려고 한다!
[오늘의 알고리즘 1문제] - 프로그래머스 MySQL
<조건에 맞는 저자와 도서 리스트 출력하기>
다음은 어느 한 서점에서 판매중인 도서들의 도서 정보(BOOK), 저자 정보(AUTHOR) 테이블입니다.
BOOK 테이블은 각 도서의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다.
| Column name | Type | Nullable | Description |
| book_id | Interger | false | 도서 ID |
| category | Varchar(N) | false | 카테고리(경제,인문,소설,생활,기술) |
| author_id | Interger | false | 저자ID |
| price | Interger | false | 판매가(원) |
| published_date | Date | false | 출판일 |
AUTHOR 테이블은 도서의 저자의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다.
| Column name | Type | Nullable | Description |
| author_id | Interger | false | 저자 ID |
| author_name | Varchar(N) | false | 저자명 |
*문제*
'경제' 카테고리에 속하는 도서들의 도서 ID(BOOK_ID), 저자명(AUTHOR_NAME), 출판일(PUBLISHED_DATE) 리스트를 출력하는 SQL문을 작성해주세요.
결과는 출판일을 기준으로 오름차순 정렬해주세요.
<정답>
SELECT BOOK_ID ,
AUTHOR_NAME ,
DATE_FORMAT(PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATE
FROM BOOK AS B
LEFT
JOIN AUTHOR AS A
ON B.AUTHOR_ID = A.AUTHOR_ID
WHERE B.CATEGORY = '경제'
ORDER BY PUBLISHED_DATE
[문제점 및 느낀점]
- 처음에 FROM 문에 LEFT JOIN을 한번에 쓰려고 하니 채점 기준에 맞지 않았다.
- JOIN 구문을 분리하여 정리하니 정답으로 인정되었다.
'Develop > Daily Algorithm Practice 공략집' 카테고리의 다른 글
| [오늘의 알고리즘 1문제] - <동명 동물 수 찾기> (0) | 2025.01.14 |
|---|---|
| [오늘의 알고리즘 1문제] - <동물 수 구하기> (0) | 2025.01.13 |
| [오늘의 알고리즘 1문제] - <동물 아이디와 이름> (0) | 2025.01.10 |
| [오늘의 알고리즘 1문제] - <중복 제거하기> (0) | 2025.01.09 |
| [오늘의 알고리즘 1문제] - <역순으로 정렬하기> (0) | 2025.01.08 |