INNER JOIN

 

SELECT * FROM TableA A INNER JOIN TableB B ON A.key = B.key

 

이므로

 

SELECT * FROM topic INNER JOIN author ON topic.author_id = author.aid

 

SELECT * FROM topic INNER JOIN author ON topic.author_id = author.aid INNER JOIN profile ON author.profile_id = profile.pid

 

이런식으로 작성해 줄 수 있다

 

왼쪽의 것만 할 때는 LEFT JOIN이고 SELECT * FROM TableA A LEFT JOIN TableB B ON A.key = B.key

 

FULL OUTER JOIN

 

SELECT * FROM topic FULL OUTER JOIN author ON topic.author_id = author.id

 

안타깝게도 많은 DB에서 FULL OUTER JOIN을 지원하지 않는다

 

그러므로 UNION을 써준다

 

중복되는 것을 지워주는 역할을 하는게 UNION DISTINCT

 

(SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.aid) UNION (SELECT * FROM topic RIGHT JOIN author ON topic.author_id =author.aid)

 

EXCLUSIVE JOIN

 

SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.aid WHERE author.aid is NULL

 

 

'DATABASE > Database' 카테고리의 다른 글

공부(6)  (0) 2021.08.31
공부(5)  (0) 2021.08.30
공부(4)  (0) 2021.08.30
공부(2)  (0) 2021.08.29
공부(1)  (0) 2021.08.29

+ Recent posts