https://school.programmers.co.kr/learn/courses/30/lessons/144854
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
* JOIN을 하는이유
1. 읽기가 좋은 테이블은 수정하기가어렵다.
EX) 이름,제목,작가이름, 주소,직업....
2. 수정하기 좋은 테이블(정규화된 테이블)은 읽기가 어렵다.
TABLE1) 작가아이디,주소,
TABLE2) 책이름,내용,작가아이디
-> 해결 : 정규화(중복없이 나누어진)된 테이블로 DB에 보관 AND
조인을통해 읽기좋은 형태로 사용자에게 제공하면된다!
* LEFT JOIN
TABLE1 LEFT JOIN TABLE2 ON 조건 // 결과로 붙인테이블이 반환된다
그 중에서 SELECT 로 원하는 속성만 뽑으면된다.

*DATE_FORMAT
DATE_FORMAT(PUBLISHED_DATE, "%Y-%m-%d")
날짜가 뒤의 초단위제거되고, 2000-01-02 로 반환된다.
* 전체코드
SELECT BOOK_ID, AUTHOR_NAME, DATE_FORMAT(PUBLISHED_DATE, "%Y-%m-%d") AS PUBLISHED_DATE
FROM BOOK LEFT JOIN AUTHOR ON BOOK.AUTHOR_ID= AUTHOR.AUTHOR_ID
WHERE CATEGORY='경제'
ORDER BY PUBLISHED_DATE ASC
실행결과

'SQL 코테' 카테고리의 다른 글
프로그래머스 즐겨찾기가 가장 많은 식당 정보 출력하기 // GROUP BY 집계함수(MAX) 주의사항 (0) | 2023.08.06 |
---|---|
프로그래머스 성분으로 구분한 아이스크림 총 주문량 // GROUP BY (0) | 2023.08.06 |
프로그래머스 없어진 기록 찾기 // LEFT JOIN VS INNER JOIN (0) | 2023.08.06 |
프로그래머스 있었는데요 없었습니다 // JOIN 기본값==INNER JOIN (0) | 2023.08.06 |
프로그래머스 상품 별 오프라인 매출 구하기 // GROUP BY 이해하기, ORDER BY 정렬기준 2개, SQL실행순서 (0) | 2023.08.06 |