차이점은 무엇이며 LEFT JOIN그리고 LEFT OUTER JOIN?
차이점은 무엇이며 LEFT JOIN그리고 LEFT OUTER JOIN?
답변:
설명서에 따라 FROM (Transact-SQL) :
<join_type> ::=
[ { INNER | { { LEFT | RIGHT | FULL } [ OUTER ] } } [ <join_hint> ] ]
JOIN
키워드 OUTER는 선택 사항으로 표시됩니다 (대괄호로 묶음). 이 특정한 경우에, 당신이 지정하는지의 여부 OUTER는 차이가 없습니다. 의 다른 요소 절에 가입하면서도 떠나, 옵션으로 표시되어 있습니다 그들을 밖으로 것 차이를 확인하십시오.
예를 들어, JOIN절의 전체 type-part 는 선택 사항입니다.이 경우 기본값은 INNER단지 지정 하는 경우 JOIN입니다. 다시 말해, 이것은 합법적입니다.
SELECT *
FROM A JOIN B ON A.X = B.Y
동등한 구문 목록은 다음과 같습니다.
A LEFT JOIN B A LEFT OUTER JOIN B
A RIGHT JOIN B A RIGHT OUTER JOIN B
A FULL JOIN B A FULL OUTER JOIN B
A INNER JOIN B A JOIN B
또한이 다른 SO 질문에 남은 대답을 살펴보십시오 .SQL 왼쪽 조인 대 FROM 행의 여러 테이블? .

INNER JOIN오른쪽과 JOIN왼쪽에있는 것이 낫지 않습니까?
JOINs에 대해 똑같이 따라한다면 일관성이 있다고 생각했습니다 .
귀하의 질문에 대답하기 위해 LEFT JOIN과 LEFT OUTER JOIN의 차이점은 없습니다 .
INNER JOIN- 두 테이블 모두에있는 경우 데이터를 가져옵니다.
OUTER JOIN 은 3 가지 유형입니다.
LEFT OUTER JOIN -왼쪽 테이블에있는 경우 데이터를 가져옵니다.RIGHT OUTER JOIN -오른쪽 테이블에 데이터가 있으면 가져옵니다.FULL OUTER JOIN -두 테이블 중 하나에있는 경우 데이터를 가져옵니다.이름에서 알 수 있듯이 CROSS JOIN 은 [n X m]모든 것을 모든 것과 결합시킵니다. 쉼표를 사용하여 분리하기 위해 명령문
의 FROM절에 조인 테이블을 간단히 나열하는 시나리오와 유사 SELECT합니다.
주목할 사항 :
JOIN한 경우 기본적으로 a INNER JOIN입니다.OUTER있어야한다 조인 LEFT| RIGHT| FULL당신은 단순히 말할 수 없습니다 OUTER JOIN.OUTER키워드 를 삭제 하고 LEFT JOINor RIGHT JOIN또는 이라고 말하면 FULL JOIN됩니다.더 나은 방법으로 이들을 시각화하려면 다음 링크로 이동하십시오. SQL 조인에 대한 시각적 설명
CROSS JOIN와 동일합니다 FULL JOIN.
Cross Join하고 Full Outer Join어떤 방법이 비슷한 것 같습니다에 ....
왼쪽 조인과 왼쪽 외부 조인의 차이점은 무엇입니까?
아무것도 없습니다 . LEFT JOIN그리고 LEFT OUTER JOIN동등합니다.
OUTER선택 사항 인 이유에 대한 참조 또는 설명을 추가하면 좋을 것 입니다.
외부 조인과 외부 조인의 차이를 이해할 수있는 한 PostgreSQL DBA입니다. 차이점은 인터넷 전체에서 상당한 토론을하는 주제입니다. 오늘까지 나는 그 두 가지의 차이점을 보지 못했습니다. 그래서 나는 더 나아가서 그 차이점을 찾으려고 노력합니다. 결국 나는 그것에 관한 전체 문서를 읽었고 이에 대한 답을 찾았습니다.
따라서 문서 (적어도 PostgreSQL에서)를 보면이 문구를 찾을 수 있습니다.
"단어 INNER와는 OUTER. 모든 형태의 선택 사항 INNER, 기본값 LEFT, RIGHT및 FULL외부 조인을 의미한다."
다시 말해
LEFT JOIN과 LEFT OUTER JOIN같다
RIGHT JOIN과 RIGHT OUTER JOIN같다
나는 그것이 여전히 답을 찾으려고 노력하는 사람들에게 기여할 수 있기를 바랍니다.
다음 순서로 조인을 생각하는 것이 더 쉽다는 것을 알았습니다.
이 (상대적으로) 간단한 모델을 알아낼 때까지 JOINS는 항상 약간의 검은 예술이었습니다. 이제 그들은 완벽하게 이해됩니다.
이것이 혼란보다 더 도움이되기를 바랍니다.
LEFT / RIGHT와 LEFT OUTER / RIGHT OUTER가 같은 이유는 무엇입니까? 왜이 어휘를 설명해 봅시다. LEFT 및 RIGHT 조인은 OUTER 조인의 특정 사례이므로 OUTER LEFT / OUTER RIGHT 이외의 다른 것은 될 수 없습니다. OUTER 조인은 OUTER 조인의 부분 결과 인 LEFT 및 RIGHT 조인과 달리 FULL OUTER 라고도 합니다. 과연:
Table A | Table B Table A | Table B Table A | Table B Table A | Table B
1 | 5 1 | 1 1 | 1 1 | 1
2 | 1 2 | 2 2 | 2 2 | 2
3 | 6 3 | null 3 | null - | -
4 | 2 4 | null 4 | null - | -
null | 5 - | - null | 5
null | 6 - | - null | 6
OUTER JOIN (FULL) LEFT OUTER (partial) RIGHT OUTER (partial)
INNER, OUTER, CROSS의 3 가지 사례 만 존재하는 것은 물론 이러한 작업에 별칭이있는 이유가 명확 해졌습니다. OUTER를위한 2 개의 서브 케이스. 교사가 이것을 설명하는 방법과 어휘, 위의 답변은 종종 다양한 유형의 참여가있는 것처럼 보입니다. 그러나 실제로는 매우 간단합니다.
JOIN암시하는 INNER JOIN"이 외부 조인 어휘 에 대한 추론과 일치 하는지 설명 할 수 있습니까?
질문에 대답하기 위해
SQL Server 조인 구문에서 OUTER 은 선택 사항입니다.
msdn 기사에 언급되어 있습니다 : https://msdn.microsoft.com/en-us/library/ms177634(v=sql.130).aspx
따라서 다음 목록은 OUTER 유무에 관계없이 동등한 구문을 보여줍니다.
LEFT OUTER JOIN => LEFT JOIN
RIGHT OUTER JOIN => RIGHT JOIN
FULL OUTER JOIN => FULL JOIN
다른 동등한 구문
INNER JOIN => JOIN
CROSS JOIN => ,
Dotnet Mob Artice를 적극 추천 : SQL Server에 참여

JOIN에는 주로 세 가지 유형이 있습니다
외부 : 세 가지 유형
크로스 조인 : 모든 것을 모든 것에 조인
구문 설탕은 일반 독자에게 조인이 내면이 아니라는 것을 더 분명하게 만듭니다.
이 질문의 맥락에서 2 개의 'APPLY'연산자를 게시하고 싶습니다.
가입 :
내부 가입 = 가입
외부 가입
왼쪽 외부 가입 = 왼쪽 가입
오른쪽 외부 가입 = 오른쪽 가입
완전 외부 가입 = 완전 가입
크로스 가입
SELF-JOIN : 이것은 별도의 조인 유형이 아닙니다. 이것은 기본적으로 위의 조인 중 하나를 사용하여 테이블을 조인하는 것입니다. 그러나 SQL Developer 커뮤니티에서 많은 사람들 이이 용어를들을 수 있기 때문에 JOIN 토론에서 언급 할 가치가 있다고 느꼈습니다.
적용 :
https://www.mssqltips.com/sqlservertip/1958/sql-server-cross-apply-and-outer-apply/
https://sqlhints.com/2016/10/23/outer-apply-in-sql-server/
실제 예, SQL에서 OUTER / CROSS APPLY를 사용하는 경우
APPLY 연산자는 하위 쿼리에서 동일한 계산을 수행하는 것보다 더 나은 성능을 제공하므로 매우 유용합니다. 또한 이전 버전의 SQL Server에서 많은 분석 기능을 대체합니다. 그래서 JOINS에 익숙해지면 한 SQL 개발자가 다음에 APPLY 연산자를 배우려고 노력해야한다고 생각합니다.
OUTER키워드는 선택 사항입니다.