"SQL 조인"의 두 판 사이의 차이

잔글 (Jmnote님이 조인 (SQL) 문서를 SQL 조인 문서로 이동했습니다)
 
(사용자 2명의 중간 판 16개는 보이지 않습니다)
1번째 줄: 1번째 줄:
{{다른뜻|함수 implode()}}
==개요==
==개요==
;join
;join
50번째 줄: 49번째 줄:


==종류==
==종류==
*[[왼쪽 조인]] (LEFT JOIN)
* [[교차 조인]](cross join) ★
*[[오른쪽 조인]] (RIGHT JOIN)
* [[내부 조인]](inner join) ★★
*[[내부 조인]] (INNER JOIN)
* [[외부 조인]](outer join)
*[[외부 조인]] (OUTER JOIN)
** [[왼쪽 외부 조인]](left outer join) ★★
** [[오른쪽 외부 조인]](right outer join)
** [[전체 외부 조인]](full outer join)
* [[안티 조인]](anti join)
** [[왼쪽 안티 조인]](left anti join)
** [[오른쪽 안티 조인]](right anti join)
* [[셀프 조인]](self-join)


{| class='wikitable'
{| class='wikitable'
! 명칭 !! 그림표현 !! SQL  
! 명칭 !! 그림표현 !! SQL  
|-
|-
| [[LEFT JOIN]]
| [[왼쪽 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Venn0101.svg/120px-Venn0101.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Venn0101.svg/120px-Venn0101.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
LEFT JOIN B
LEFT JOIN B ON A.key = B.key
ON A.key = B.key
</syntaxhighlight>
</source>
|-
|-
| LEFT JOIN 변형
| [[왼쪽 안티 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/e/e6/Venn0100.svg/120px-Venn0100.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/e/e6/Venn0100.svg/120px-Venn0100.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
LEFT JOIN B
LEFT JOIN B ON A.key = B.key
ON A.key = B.key
WHERE B.key IS NULL
WHERE B.key IS NULL
</source>
</syntaxhighlight>
|-
|-
| [[RIGHT JOIN]]
| [[오른쪽 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/Venn0011.svg/120px-Venn0011.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/7/76/Venn0011.svg/120px-Venn0011.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
RIGHT JOIN B
RIGHT JOIN B ON A.key = B.key
ON A.key = B.key
</syntaxhighlight>
</source>
|-
|-
| RIGHT JOIN 변형
| [[오른쪽 안티 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/Venn0010.svg/120px-Venn0010.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/Venn0010.svg/120px-Venn0010.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
RIGHT JOIN B
RIGHT JOIN B ON A.key = B.key
ON A.key = B.key
WHERE A.key IS NULL
WHERE A.key IS NULL
</source>
</syntaxhighlight>
|-
|-
| [[INNER JOIN]]
| [[내부 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/9/99/Venn0001.svg/120px-Venn0001.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/9/99/Venn0001.svg/120px-Venn0001.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
INNER JOIN B
INNER JOIN B ON A.key = B.key
ON A.key = B.key
</syntaxhighlight>
</source>
|-
|-
| [[FULL OUTER JOIN]]
| [[전체 조인]]
| https://upload.wikimedia.org/wikipedia/commons/thumb/3/30/Venn0111.svg/120px-Venn0111.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/3/30/Venn0111.svg/120px-Venn0111.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
FULL OUTER JOIN B
FULL OUTER JOIN B ON A.key = B.key
ON A.key = B.key
</syntaxhighlight>
</source>
|-
|-
| FULL OUTER JOIN 변형
| FULL OUTER JOIN 변형
| https://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Venn0110.svg/120px-Venn0110.svg.png
| https://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Venn0110.svg/120px-Venn0110.svg.png
|
|
<source lang='sql'>
<syntaxhighlight lang='sql'>
SELECT 컬럼들 FROM A
SELECT * FROM A
FULL OUTER JOIN B
FULL OUTER JOIN B ON A.key = B.key
ON A.key = B.key
WHERE A.key IS NULL OR B.key IS NULL
WHERE A.key IS NULL OR B.key IS NULL
</source>
</syntaxhighlight>
|}
|}


==같이 보기==
==같이 보기==
*[[게임 DB 설계 - 계정과 아이템]]
{{z컬럼3|
*[[디비전]]
* [[주키]]
*[[주키]]
* [[외래키]]
*[[외래키]]
* [[테이블]]
*[[테이블]]
* [[디비전]]
* [[데이터 결합]]
* [[게임 DB 설계 - 계정과 아이템]]
}}


==참고 자료==
==참고==
*https://en.wikipedia.org/wiki/Join_(SQL)
* {{영어위키백과|Join (SQL)}}


[[분류: DB]]
[[분류:조인]]

2021년 7월 26일 (월) 14:27 기준 최신판

1 개요[ | ]

join
조인, 결합, 합병
  • 여러 테이블의 레코드를 조합하여 하나의 열로 표현한 것
  • 표를 이어주는 작업

2 종류[ | ]

명칭 그림표현 SQL
왼쪽 조인  
SELECT * FROM A
LEFT JOIN B ON A.key = B.key
왼쪽 안티 조인  
SELECT * FROM A
LEFT JOIN B ON A.key = B.key
WHERE B.key IS NULL
오른쪽 조인  
SELECT * FROM A
RIGHT JOIN B ON A.key = B.key
오른쪽 안티 조인  
SELECT * FROM A
RIGHT JOIN B ON A.key = B.key
WHERE A.key IS NULL
내부 조인  
SELECT * FROM A
INNER JOIN B ON A.key = B.key
전체 조인  
SELECT * FROM A
FULL OUTER JOIN B ON A.key = B.key
FULL OUTER JOIN 변형  
SELECT * FROM A
FULL OUTER JOIN B ON A.key = B.key
WHERE A.key IS NULL OR B.key IS NULL

3 같이 보기[ | ]

4 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}