비교 차트
비교의 근거 | 어울리다 | 노동 조합 |
---|---|---|
기본 | JOIN은 공통 필드 또는 속성을 공유하는 두 개의 서로 다른 관계에있는 튜플의 특성을 결합합니다. | UNION은 쿼리에있는 관계의 튜플을 결합합니다. |
조건 | JOIN은 관련된 두 릴레이션에 적어도 하나의 공통 속성이있을 때 적용 할 수 있습니다. | UNION은 조회에있는 열 수가 같고 해당 속성이 동일한 도메인을 갖는 경우에 적용 할 수 있습니다. |
유형 | 내선, 전부 (바깥 쪽), 왼쪽 조인, 오른쪽 조인. | UNION 및 UNION ALL. |
효과 | 생성 된 튜플의 길이는 관련된 릴레이션의 튜플의 길이와 비교할 때 더 큽니다. | 결과로 생성되는 튜플의 수는 쿼리에 포함 된 각 관계에있는 튜플의 수와 비교할 때 더 많습니다. |
도표 |
JOIN의 정의
SQL의 JOIN 절은 두 릴레이션이나 테이블의 튜플을 결합하여 더 긴 튜플 크기를 만듭니다. 결과 튜플은 두 릴레이션의 속성을 포함합니다. 속성은 속성 사이의 공통 속성에 따라 결합됩니다. SQL의 다른 유형의 JOIN은 내부 조인, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN입니다.
INNER JOIN 은 두 테이블 사이에 공통 속성이있는 한 두 테이블의 튜플을 결합합니다. 왼쪽 조인 (LEFT JOIN) 은 왼쪽 테이블의 모든 튜플과 오른쪽 테이블의 튜플을 찾습니다. RIGHT JOIN 은 오른쪽 테이블의 모든 튜플과 왼쪽 테이블의 튜플 만 일치시킵니다. FULL OUTER JOIN 은 일치하는 속성을 가지고 있든지 없더라도 테이블의 모든 튜플을 생성합니다.
INNER JOIN은 JOIN과 동일합니다. INNER 키워드를 삭제하고 단순히 JOIN을 사용하여 INNER JOIN을 수행 할 수도 있습니다.
UNION의 정의
UNION은 SQL의 집합 연산입니다. UNON은 두 개의 쿼리 결과를 결합합니다. UNION의 결과는 쿼리에있는 두 관계의 튜플을 포함합니다. 충족되어야하는 조건은 두 가지 관계의 UNION을 취합니다.
- 두 릴레이션은 같은 수의 속성을 가져야합니다.
- 해당 속성의 도메인은 동일해야합니다.
UNION 과 UNION ALL 의 두 가지 유형의 UNION이 있습니다. UNION을 사용하여 얻은 결과에는 중복이 포함되지 않습니다. 반면에 UNION ALL을 사용하여 얻은 결과는 중복을 유지합니다.
SQL의 JOIN과 UNION의 주요 차이점
- JOIN과 UNION의 가장 큰 차이점은 JOIN이 두 릴레이션의 튜플을 결합하고 결과 튜플이 두 릴레이션의 속성을 포함한다는 것입니다. 반면 UNION은 두 개의 SELECT 쿼리 결과를 결합합니다.
- JOIN 절은 관련된 두 관계에 둘 다 공통 인 속성이 하나 이상있는 경우에만 적용 할 수 있습니다. 반면 UNION은 두 릴레이션이 같은 수의 애트리뷰트를 갖고 해당 애트리뷰트의 도메인이 동일 할 때 적용 가능합니다.
- JOIN INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN의 네 가지 유형이 있습니다. 그러나 UNION, UNION 및 UNION ALL의 두 가지 유형이 있습니다.
- JOIN에서 결과 터플은 두 릴레이션의 애트리뷰트를 포함하므로 더 큰 크기를 갖는다. 반면 UNION에서는 튜플에 포함 된 관계의 튜플을 포함하여 튜플 수가 증가합니다.
결론:
데이터 결합 연산은 둘 다 다른 상황에서 사용됩니다. JOIN은 적어도 하나의 속성이 공통 인 두 릴레이션의 속성을 결합하고자 할 때 사용됩니다. UNION은 쿼리에있는 두 릴레이션의 튜플을 결합 할 때 사용됩니다.