FlowerBombs

조인 ( JOIN ) 본문

JAVA/SQL

조인 ( JOIN )

CitronLemon 2019. 3. 5. 18:50

조인


두 개 이상의 테이블에서 동시 데이터 검색



EQUI 조인


FROM 절에서 테이블을 콤마로 구분하고 WHERE절에서 조인 조건을 명시하여 두 개 이상의 테이블에서 동시 데이터 검색.


1
2
3
4
5
SELECT {컬럼이름 [ as 별칭]~}
FROM 테이블1, 테이블2, ..., 테이블n
WHERE 조인조건 [ AND 검색조건 ]
[ GROUP BY 컬럼이름]
ORDER BY 컬럼이름 [정렬옵션] ]
cs


- 추가적인 검색 조건은 조인 조건 뒤에 AND로 명시.

- from절에서 테이블 이름을 나열하면서 별칭 지정 가능.

- 두 개 이상의 테이블에서 같은 이름의 컬럼이 있을 경우

select에서 각 컬럼을 테이블이름.컬럼이름 혹은 별칭이름.컬럼이름 형태로 지정


1
2
3
4
SELECT s.name, s.deptno, d.name
FROM student s, department d
WHERE s.deptno = d.deptno AND s.name='홍길동';
 
cs



INNER 조인


EQUI 조인의 다른 형태.


1
2
3
4
5
6
SELECT {컬럼이름 [ as 별칭].. }
FROM 테이블1 INNER JOIN 테이블2
ON 조인조건
[WHERE 검색조건 ]
[GROUP BY 컬럼이름 ]
[ORDER BY 컬럼이름 [정렬옵션] ]
cs



1
2
3
4
5
SELECT {컬럼이름 [ as 별칭].. }
FROM 테이블1, 테이블2, ..., 테이블n
WHERE 조인조건 [ AND 검색조건 ]
[GROUP BY 컬럼이름 ]
[ORDER BY 컬럼이름 [정렬옵션] ]
cs



1
2
3
4
SELECT s.name, s.deptno, d.name
FROM student s INNER JOIN department d
ON s.deptno = d.deptno
WHERE s.name='홍길동';
cs








OUTER조인



양쪽 테이블 중에서 어느 한 테이블의 모든 데이터를 출력해야 하는 경우 사용.(LEFT, RIGHT)

지정된 방향의 테이블에서 모든 데이터 출력을 보장한다.


1
2
3
4
5
6
SELECT { 컬럭이름 [ as 별칭] ...}
FROM 테이블1 LEFT OUTER JOIN 테이블2
ON 조인조건
[WHERE 검색조건 ]
[GROUP BY 컬럼이름 ]
[ORDER BY 컬럼이름 [정렬옵션] ]
cs


1
2
3
4
SELECT s.name, s.deptno, d.name
FROM student s LEFT OUTER JOIN department d
ON s.deptno=d.deptno
WHERE s.name = '홍길동';
cs



'JAVA > SQL' 카테고리의 다른 글

데이터 저장, 입력 / 수정 / 삭제  (0) 2019.03.05
SubQuery  (0) 2019.03.05
그룹함수  (0) 2019.03.05
함수  (0) 2019.03.05
데이터 조회하기  (0) 2019.03.04
Comments