일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 에러
- eclipse 설정
- 인텔리제이
- 도커
- docker
- tomcat
- 쿼리
- Excel
- jQuery
- Java
- 형변환
- Eclipse
- 한글 깨짐
- spring 오류
- 자바
- 엘라스틱서치
- db
- JSP
- java 오류
- spring form
- HTML
- elasticsearch
- 자바 리스트
- CSS
- JavaScript
- 이클립스
- 엑셀
- 데이터베이스
- 자바스크립트
- 이클립스 설정
- Today
- Total
개발노트
Join 정리 본문
Join 사용하는 이유
: 여러개의 테이블로부터 자료를 검색하기 위하여 조인을 사용합니다.
- WHERE 절에 조인 조건 기술
- SELECT 문장을 작성할 경우 명확성을 위하여 또는 데이터베이스의 Performance 향상을 위하여
컬럼열 이름 앞에 테이블 명을 붙인다.
[Inner Join - 단순 조인, 내부 조인]
: 조인 조건에서 “=”을 사용하여 값들이 정확하게 일치하는 경우에 사용하는 조인
다른 말로 단순 조인 또는 내부 조인 이라고도 합니다.
SELECT table1.column1 [,table2.column2, . . . . .] //테이블명.(해당테이블에서 조회할)컬럼명
FROM table1, table2 //테이블명
WHERE table1.column1 = table2.column2; //조건
[Outter Join]
: 조인하려는 테이블 사이에 아무런 조건이 일치하지 않을 경우에 사용
- 조인되지 않는 두 테이블의 모든 행들을 출력할 경우에 사용
- Null값이 있는곳에 (+), null값이 없는 곳에 left/right outter join 사용
※left/right outter join
- (+) : left/right outer join 기호
- 일치하는 행이 없는 테이블의 열 이름 뒤에 outer join연산자를 사용
(즉, where절에서 = 기준으로 양쪽 사이드 모두 올수 없으며 한쪽에만 위치함)
▶ 결과의 기준이 오른쪽 테이블이라면 (오른쪽 테이블 모두 출력시) right 사용
결과의 기준이 왼쪽 테이블이라면 (왼쪽 테이블 모두 출력시) left 사용
→ Outer Join제약 사항
Outer Join연산자는 정보가 부재하는 쪽의 표현식 한 쪽에만 둔다. 다른 테이블의 어떠한 열과도 직접적으로 일치하는 것이 없는 테이블의 행을 리턴합니다.
Outer Join을 포함하는 조건은 IN연산자를 사용할 수 없고, OR연산자에 의해 다른 조건과 연결될 수 없다.
SELECT table1.column1 [,table2.column2, . . . . .] //해당 컬럼을 검색하기 위해 조인함
FROM table1, table2
WHERE table1.column1 = table2.column2(+); //(+)는 outer join기호입니다.
//where절의 한쪽에만 위치
SELECT table1.column1 [,table2.column2, . . . . .]
FROM table1, table2
WHERE table1.column1(+) = table2.column2;
'Programming > Database' 카테고리의 다른 글
JDBC 드라이버 로딩 및 Connection 생성 (0) | 2022.02.08 |
---|---|
SQL 함수 (0) | 2020.04.27 |
UNION / INTERSECT / MINUS (0) | 2020.04.27 |
NVL 함수 (0) | 2020.04.27 |
DDL / DML / DCL - 쿼리의 종류 (0) | 2020.04.27 |