다른 명령
편집 요약 없음 |
|||
| 9번째 줄: | 9번째 줄: | ||
* [[Join Expression#The Natural Join|Natural Join]]: 두 테이블에서 이름이 같은 속성들끼리 자동으로 비교해서 join 한다. | * [[Join Expression#The Natural Join|Natural Join]]: 두 테이블에서 이름이 같은 속성들끼리 자동으로 비교해서 join 한다. | ||
* Inner Join: 조건을 만족하는 쌍만 결과에 포함된다. (null이 있는 건 제외) | * Inner Join: 조건을 만족하는 쌍만 결과에 포함된다. (null이 있는 건 제외) | ||
* Outer Join: 조건에 맞지 않아도 한쪽 테이블의 데이터를 모두 | * Outer Join: 조건에 맞지 않아도 한쪽 테이블의 데이터를 모두 유지한다. → Left / Right / Full Outer Join으로 나뉜다. | ||
해당 문서에서 사용되는 모든 예제들은 figure 1, 2로 제공되는 두 릴레이션인 student와 takes에 대한 것이다. | 해당 문서에서 사용되는 모든 예제들은 figure 1, 2로 제공되는 두 릴레이션인 student와 takes에 대한 것이다. | ||
2025년 4월 7일 (월) 17:38 판
상위 문서: SQL
개요
- Sample gallery
-
Figure 1. The student relation
-
Figure 2. The takes relation
Join 연산은 두 개의 릴레이션(relation)을 입력으로 받고 그 결과로 또 다른 릴레이션을 만들어내는 연산이다. Join은 데카르트 곱(Cartesian product)의 일종으로, 두 릴레이션에 있는 튜플들을 모든 가능한 쌍으로 조합한 다음 특정 조건을 만족하는 튜플 쌍만 선택해서 결과로 내보낸다. 또한 릴레이션에 포함될 속성(attribute)들도 지정된다. Join 연산은 보통 SQL 쿼리(query)에서 from 절의 subquery 표현식으로 사용된다. Join 연산의 종류는 다음 세가지가 있다:
- Natural Join: 두 테이블에서 이름이 같은 속성들끼리 자동으로 비교해서 join 한다.
- Inner Join: 조건을 만족하는 쌍만 결과에 포함된다. (null이 있는 건 제외)
- Outer Join: 조건에 맞지 않아도 한쪽 테이블의 데이터를 모두 유지한다. → Left / Right / Full Outer Join으로 나뉜다.
해당 문서에서 사용되는 모든 예제들은 figure 1, 2로 제공되는 두 릴레이션인 student와 takes에 대한 것이다.