PracticeEveryday
MySQL 본문
Join : 붙다, 가입하다
// JOIN은 데이터베이스 내의 여러 테이블에서 가져온 레코드를 조합하여 하나의 테이블이나 결과 집합으로 보여주는 Query
JOIN의 종류
1. LEFT JOIN
2. RIGHT JOIN
3. INNER JOIN
LEFT JOIN
// LEFT JOIN은 첫 번째 테이블을 기준으로, 두 번째 테이블을 조합하는 Query
[ 첫 번째 테이블 이름 EX) SELECT [ 필드 ] FROM [ 첫 번째 테이블 ] ] LEFT JOIN [ 두 번째 테이블 이름 ] ON [ 조건 ]
// ON 절의 조건을 만족하지 않는 첫 번째 테이블의 값은 모두 NULL로 가져옵니다.
// ON 절에서는 WHERE 조건문에서 사용하는 모든 조건을 사용할 수 있습니다.
SELECT * FROM Reservation
LEFT JOIN Customer ON Reservation.Name = Customer.Name
WHERE ReserveDate> '2016-02-01';
1. Reservation 테이블에서 모든 필드를 다 가져 올 때
Reservation 테이블 기준으로 Customer 테이블을 붙여서 가져와줘
2. Reservation 테이블 Name 컬럼이랑 Customer테이블 Name 컬럼이
일치하는 레코드 붙여서 갖다줘
3. 그중에 ReserveData 가 2016년 2월 1일 이후 걸로 보여줘
SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.aid
1. topic 테이블에서 모든 테이블을 다 가져 올 때 topic 테이블 기준으로 author 테이블을 붙여서 가져와줘
2. topic 테이블 author_id 필드랑 author 테이블 aid 필드가 일치하는 레코드 붙여서 갖다줘
일치하지 않는 topic 레코드 오른 쪽에는 NULL 값 넣어서 붙여줘!
위의 예제에서 두 개의 Name 값이 일치하면, INNER JOIN과 같이 두 테이블의 모든 필드를 그대로 가져옵니다.
하지만 두 개의 Name 값이 일치하지 않는 경우에는 Customer 테이블의 모든 필드를 NULL로 표시됩니다.
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com
SQL Joins Visualizer
Please select how do you want to do SQL JOIN between two table Copy SQL
sql-joins.leopard.in.ua