본문 바로가기
Computer/Algorithm_SQL

[Algorithm_SQL] 조건에 맞는 도서와 저자 리스트 출력하기 (Success)

by HJ0216 2023. 10. 8.
 

프로그래머스

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

programmers.co.kr

 

📝 Language: Oracle

 

1
2
3
4
5
6
7
8
9
10
  SELECT B.BOOK_ID, 
         A.AUTHOR_NAME, 
         TO_CHAR(B.PUBLISHED_DATE, 'YYYY-MM-DD') PUBLISHED_DATE
    FROM BOOK B
    JOIN AUTHOR A
      ON B.AUTHOR_ID=A.AUTHOR_ID
   WHERE B.CATEGORY='경제'
ORDER BY PUBLISHED_DATE
;
 
 

🙂 확인 사항

1. BOOK, AUTHOR 테이블

2. 경제 카테고리

3. 도서ID, 저자명, 출반일 출력

4. 출판일 기준 오름차순

 

😮  외의 풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
WITH TOTAL AS(
    SELECT B.BOOK_ID,
           A.AUTHOR_NAME,
           B.PUBLISHED_DATE, 
           B.CATEGORY
      FROM BOOK B
      JOIN AUTHOR A
        ON B.AUTHOR_ID=A.AUTHOR_ID
)
  SELECT BOOK_ID, 
         AUTHOR_NAME, 
         TO_CHAR(PUBLISHED_DATE, 'YYYY-MM-DD') PUBLISHED_DATE
    FROM TOTAL
   WHERE CATEGORY='경제'
ORDER BY PUBLISHED_DATE
;
 
 

Join 테이블을 공통 표현식으로 사용

 

1
2
3
4
5
6
7
8
9
10
  SELECT B.BOOK_ID,
         A.AUTHOR_NAME,
         TO_CHAR(B.PUBLISHED_DATE, 'YYYY-MM-DD') PUBLISHED_DATE
    FROM BOOK B, 
         AUTHOR A
   WHERE B.AUTHOR_ID = A.AUTHOR_ID
     AND B.CATEGORY = '경제'
ORDER BY B.PUBLISHED_DATE
;
 
 

where 조건절로 inner join 처리

 

 

 

🔗 소스 코드
GitHub