[SQL] INNER가, 왼쪽, 오른쪽 조인 및 FULL은 조인의 차이점은 무엇입니까? [복제]
SQLINNER가, 왼쪽, 오른쪽 조인 및 FULL은 조인의 차이점은 무엇입니까? [복제]
가입 INNER의 차이는 무엇, LEFT은 가입, RIGHT 가입 및 FULL은 가입 MySQL은?
해결법
-
==============================
1.강령 프로젝트에이 원래의 기사를 읽으면 많은 도움이 될 것입니다 : SQL의 시각적 표현을 결합합니다.
강령 프로젝트에이 원래의 기사를 읽으면 많은 도움이 될 것입니다 : SQL의 시각적 표현을 결합합니다.
또한이 게시물을 확인 : SQL 서버 - 성능 향상 - 왼쪽에있는 가입 또는 NOT?
가입 및 외부의 MySQL에 가입 차이 :에서 원래 하나를 찾을 수 있습니다.
-
==============================
2.INNER JOIN은 ON 절 공급을 기반으로 두 테이블 사이에 공통되는 모든 레코드를 가져옵니다.
INNER JOIN은 ON 절 공급을 기반으로 두 테이블 사이에 공통되는 모든 레코드를 가져옵니다.
LEFT JOIN은 왼쪽에서 모든 레코드를 연결하고 오른쪽 테이블에서 관련 기록을 얻을 수 있지만, 당신은 오른쪽 테이블에서 일부 열을 선택한 경우에는 관련 기록이없는 경우,이 열은 NULL이 포함됩니다.
RIGHT 가입은 위와 같이하지만 오른쪽 테이블의 모든 레코드를 가져옵니다.
FULL은 가입 관련 기록이 반대 테이블에 존재하지 않는 열 두 테이블과 풋 NULL에서 모든 레코드를 가져옵니다.
-
==============================
3.SQL에서 사용할 수 조인의 다른 종류가 있습니다 :
SQL에서 사용할 수 조인의 다른 종류가 있습니다 :
INNER는 가입 : 반환 행을 두 테이블에서 일치가있을 때.
왼쪽 가입 : 왼쪽 테이블에서 반환 모든 행 오른쪽 테이블과 일치하는 데이터가 존재하지 않는 경우에도 마찬가지입니다.
RIGHT 가입 : 오른쪽 테이블에서 반환 모든 행, 왼쪽 테이블과 일치하는 데이터가 존재하지 않는 경우에도 마찬가지입니다.
FULL은 가입 : 그것은 왼쪽과 오른쪽 외부 모두 조인의 결과를 결합합니다.
조인 된 테이블은 두 테이블의 모든 레코드를 포함하고 양쪽에 일치하는 항목을 누락 NULL을 채 웁니다.
SELF는 JOIN : 테이블이 일시적으로 SQL 문에 하나 이상의 테이블의 이름을 변경, 두 개의 테이블 인 것처럼 자체에 테이블을 조인하는 데 사용됩니다.
가입 데카르트 : 반환 두 개 이상의 조인 된 테이블에서 레코드 세트의 직교 제품.
우리는 각 처음 네는 세부 사항에 조인을 수행 할 수 있습니다
우리는 다음과 같은 값을 가진 두 개의 테이블이있다.
TableA의
id firstName lastName ....................................... 1 arun prasanth 2 ann antony 3 sruthy abc 6 new abc
TableB의
id2 age Place ................ 1 24 kerala 2 24 usa 3 25 ekm 5 24 chennai
....................................................................
INNER는 가입
참고 : 그들이 TableA의와 TableB의에서 흔히있는 즉 열 두 테이블의 교차를 제공합니다
통사론
SELECT table1.column1, table2.column2... FROM table1 INNER JOIN table2 ON table1.common_field = table2.common_field;
우리의 샘플 테이블에 적용 :
SELECT TableA.firstName,TableA.lastName,TableB.age,TableB.Place FROM TableA INNER JOIN TableB ON TableA.id = TableB.id2;
결과가 될 것인가
firstName lastName age Place .............................................. arun prasanth 24 kerala ann antony 24 usa sruthy abc 25 ekm
왼쪽 가입
참고 : 표에서 선택된 모든 행을 줄 것이다 플러스 어떤 공통의 표에서 행을 선택했다.
통사론
SELECT table1.column1, table2.column2... FROM table1 LEFT JOIN table2 ON table1.common_field = table2.common_field;
우리의 샘플 테이블에 적용 :
SELECT TableA.firstName,TableA.lastName,TableB.age,TableB.Place FROM TableA LEFT JOIN TableB ON TableA.id = TableB.id2;
결과
firstName lastName age Place ............................................................................... arun prasanth 24 kerala ann antony 24 usa sruthy abc 25 ekm new abc NULL NULL
RIGHT 가입
참고 : 표에서 선택된 모든 행을 줄 것이다 플러스 어떤 일반적인 타블로의 행을 선택했다.
통사론
SELECT table1.column1, table2.column2... FROM table1 RIGHT JOIN table2 ON table1.common_field = table2.common_field;
우리의 샘플 테이블에 적용 :
SELECT TableA.firstName,TableA.lastName,TableB.age,TableB.Place FROM TableA RIGHT JOIN TableB ON TableA.id = TableB.id2;
결과
firstName lastName age Place ............................................................................... arun prasanth 24 kerala ann antony 24 usa sruthy abc 25 ekm NULL NULL 24 chennai
FULL은 가입
참고 : 두 테이블에서 선택된 모든 값을 반환합니다.
통사론
SELECT table1.column1, table2.column2... FROM table1 FULL JOIN table2 ON table1.common_field = table2.common_field;
우리의 샘플 테이블에 적용 :
SELECT TableA.firstName,TableA.lastName,TableB.age,TableB.Place FROM TableA FULL JOIN TableB ON TableA.id = TableB.id2;
결과
firstName lastName age Place ............................................................................... arun prasanth 24 kerala ann antony 24 usa sruthy abc 25 ekm new abc NULL NULL NULL NULL 24 chennai
흥미로운 사실
INNER 조인의 경우 순서는 중요하지 않습니다
(LEFT, RIGHT 또는 FULL) OUTER 조인 순서의 문제에 대한
에 대한 조인 순서를 당신에게 흥미있는 정보를 줄 것이다 더 나은이 링크를 확인 이동
from https://stackoverflow.com/questions/5706437/whats-the-difference-between-inner-join-left-join-right-join-and-full-join by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 나는 하나 개의 필드에 여러 개의 MySQL의 행을 연결할 수 있습니까? (0) | 2020.03.05 |
---|---|
[SQL] 나무에 평평한 테이블을 구문 분석하는 가장 효율적인 / 우아한 방법은 무엇입니까? (0) | 2020.03.05 |
[SQL] 분류 결과 각 그룹에 대해 상위 N 레코드를 가져 오기 (0) | 2020.03.05 |
[SQL] 명시 대 암시 SQL 조인 (0) | 2020.03.05 |
[SQL] PostgreSQL의 크로스 탭 쿼리 (0) | 2020.03.05 |