[ 다중 테이블 조인 ]
: 세개 이상의 테이블이 조인 될때는!
-> 조인조건1 테이블 A = 테이블 B
-> 테이블 A와 테이블 B의 관계가 형성된 상태
->
테이블 A와 테이블 B 중에서 세번째인 테이블 C와 관련있는 컬럼을 가지고 있는 테이블로 다시 조인한다.
-> 조인조건2 테이블 B = 테이블 C
-> 테이블 B와 테이블 C의 관계 형성
= 테이블 A와 테이블 C는 자동으로 관계가 형성된다.
ANSI SQL 방식으로 다중조인 (Multi Table JOIN) 을 하면?
( + ANSI SQL 표준: 어던 DBMS에서도 실행되는 쿼리의 형태 = 어떤 DBMS를 쓰더라도 문제없이 실행이 된다. )
-- 다중조인 예시
-- 다중조인을 만드는 방법
SELECT *
FROM table1
INNER JOIN table2
ON table1.컬럼명 = table2.컬럼명
INNER JOIN table3
ON table2.컬럼명 = table3.컬럼명
--위의 예시에서는 table1, table2, table3 세 개의 테이블을 조인
--INNER JOIN을 사용, 각각의 JOIN 사이에 ON 절을 사용하여 조인 조건을 지정.
SELECT *
FROM table1 AS t1
INNER JOIN table2 AS t2
ON t1.컬럼명= t2.컬럼명
INNER JOIN table3 AS t3
ON t2.컬럼명 = t3.컬럼명
--위의 예시에서는 table1에 대한 별칭을 t1, table2에 대한 별칭을 t2,
--table3에 대한 별칭을 t3로 지정하여 조인
--조인 대상 테이블의 수에 따라 INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN 등
--다양한 조인 방법을 사용할 수 있으며, 각 조인 방법에 따라 조인 조건과 결과가 다르게 나타날 수 있다.
- 각 테이블의 이름 뒤에 AS를 사용하여 테이블에 대한 별칭을 지정할 수 있으며, 이를 통해 가독성을 높일 수 있다.
- 조건의 테이블 관계형성 순서는 정해져 있지 않고 아무관계나 먼저 생성해도 된다.
- 조인 순서에 따라 결과가 달라질 수 있으니 조인할 테이블 순서를 고려하여 적절한 순서로 조인을 해야한다.
- 조인조건을 정확하게 지정해야 결과가 어긋나지 않는다.
'IT Programming > Oracle' 카테고리의 다른 글
[Oracle] SQL 지정한 컬럼을 기준으로 정렬해주는 ODERE BY (0) | 2023.04.20 |
---|---|
[Oracle] SQL 집합 연산자와 SELECT 구문 / 절 zip. (WHERE, IN, AND, OR, BETWEEN-AND) (0) | 2023.04.19 |
[Oracle] 쿼리의 조인 VOL.2) NATURAL JOIN , CROSS/SELF JOIN (2) | 2023.04.19 |
[Oracle] 쿼리의 조인 VOL.1) INNER JOIN , OUTER JOIN (0) | 2023.04.19 |
[Oracle] 오라클 SQL 시작하기 , 쿼리란? (조회,서브쿼리) (0) | 2023.04.18 |
댓글