기존 author테이블 및 post테이블에 post_authors 테이블 추가 생성하여 3개 테이블 LEFT JOIN을 진행하려고한다.
- 현재 author 테이블 및 post 테이블
- post_author 테이블 생성 SQL 구문
-- post_author 테이블 생성
create table post_author(id INT PRIMARY KEY,
post_id INT,
author_id INT,
FOREIGN KEY(post_id) REFERENCES post(id), FOREIGN KEY(author_id) REFERENCES author(id));
-- post_author테이블 id 컬럼 auto_increment 설정
ALTER TABLE post_author MODIFY COLUMN id INT AUTO_INCREMENT;
- post_author 테이블 생성 후 데이터 삽입
- 최종적으로 3개 테이블 JOIN예상도와 같이 데이터 값이 추출되는지 SQL구문을 작성하여 테스트 진행
-- post_author 테이블, post 테이블, author 테이블 join하여 데이터 값 추출
select pa.id, pa.post_id, pa.author_id, p.title, p.contents, a.name from post_author as pa inner join post as p on pa.post_id = p.id
inner join author as a on pa.author_id = a.id order by pa.id;
- 데이터 값이 예상했던 것과 같이 추출되는 것 확인
'DB STUDY > DB Practice' 카테고리의 다른 글
Redis(Remote Dictionary Server) 기본 정리 (2) | 2023.11.27 |
---|---|
MYSQL 1차, 2차, 3차 정규화 진행하기 (3) | 2023.11.24 |
MYSQL ORDER SYSTEM 논리적 데이터 모델링 (2) | 2023.11.24 |
MYSQL Index 설정 후 테이블 조회 성능 향상 확인 테스트 (2) | 2023.11.23 |