데이터베이스
[생활코딩] LEFT/RIGHT OUTER JOIN
ok4u
2019. 5. 30. 08:23
테이블을 조회할 때 어떤 테이블의 내용은 모두 보고 싶고, 이런 경우를 위해 다양한 JOIN이 존재한다.
SELECT * FROM TOPIC LEFT JOIN AUTHOR ON TOPIC.AUTHOR_ID = AUTHOR.AID;
두 개의 테이블을 하나로 만들어줘!!!
왼쪽에 있는 TOPIC 테이블을 기준으로 RDBMS 는 가져옵니다.
자기한테 존재하는 것을 모두 가져와요.
심지어 자기가 가지고 있지 않는 행이 있다면 NULL로 표기
왼쪽에 있는 테이블에는 값이 있는데! 그 값에 해당되는 오른쪽 테이블의 행이 없구나!
이것을 인지할 수 있어야 합니다.
이번에는 테이블 3개를 LEFT JOIN 해보겠습니다.
SELECT * FROM TOPIC LEFT JOIN AUTHOR ON TOPIC.AUTHOR_ID = AUTHOR.AID LEFT JOIN PROFILE ON AUTHOR.PROFILE_ID = PROFILE.PID;
이전에 만든 테이블에 다시 LEFT JOIN을 수행한다. (외래키가 존재해야 함)
오라클 조인과 ANSI 조인
모든 정보가 필요한 쪽의 반대에 (+) 붙이는 것!