JAVA

221110 oracle join1

주영재 2022. 11. 10. 18:40

★★★★★JOIN
관계형 데이터베이스의 꽃

두 개의 테이블을 서로 연관해서 조회하는 것을 조인이라 부름
조인은 5개 정도가 있음
크게 오라클 조인, ANSI조인(모든 데이터베이스 공용 사용)이 있음

중요 조인의 종류
1. INNER JOIN-내부 조인(EQUALS JOIN)
2. OUTER JOIN-외부 조인
-LEFT
-RIGHT
-FULL OUTER
그 밖의 조인의 종류
3.CROSS JOIN
4.SELF JOIN

inner조인과 outer조인을 잘 구별하는 것이 중요

표를 분리해서 효율적으로 사용할 수 있도록 한 후에, 보기 편하게 하나로 합치는 것이 join이다
연관된 다른 테이블의 primary key값을 적어놓은 컬럼을 forign key라고 함


1.INNER JOIN

select * from info inner join auth on info.auth_id=auth.auth_id
INNER JOIN-null값은 빠져 버린다.


2.LEFT OUTER JOIN
select * from info left outer join auth on info.auth_id = auth.auth_id
LEFT OUTER JOIN-가장 많이 씀. 왼쪽 테이블이 기준. 빠지는 것이 없다. 
왼쪽테이블은 전부 출력하고, 오른쪽테이블과 붙을 수 없으면 다 null로 표현함


3.RIGHT OUTER JOIN
SELECT * FROM info RIGHT OUTER JOIN auth ON info.auth_id = auth.auth_id
LEFT OUTER JOIN과 반대. 기준은 오른쪽테이블.


4.FULL OUTER JOIN
SELECT * FROM info FULL OUTER JOIN auth ON info.auth_id = auth.auth_id
양쪽 다 누락되는거 없이 출력

5.CROSS JOIN
잘못된 형태의 조인
SELECT * FROM info CROSS JOIN auth
하나의 행에 오른쪽테이블이 다 붙는 형식


그냥 join이면 inner join 의미