[SQL] 여러 열 조인
SQL여러 열 조인
나는 두 테이블에서 여러 열을 가입하려는 두 테이블 (테이블 A와 테이블 B)가 있습니다.
Table A
Col1 Col2
================
A11 A21
A22 A22
A33 A23
Table B
Col1 Col2 Val
=================
B11 B21 1
B12 B22 2
B13 B23 3
나는 표 A에서 모두 열이 발을 얻기 위해 표 B에 하나 COL1과 Col2의의에 참여하고 싶습니다.
해결법
-
==============================
1.귀하의 예제에는 일치를 동의하지 않습니다. 당신이 중 하나에 모두 열을 의미하는 경우에이 같은 쿼리 또는 필요 필요한 데이터 설계를 재 - 조사한다.
귀하의 예제에는 일치를 동의하지 않습니다. 당신이 중 하나에 모두 열을 의미하는 경우에이 같은 쿼리 또는 필요 필요한 데이터 설계를 재 - 조사한다.
Select TableA.Col1, TableA.Col2, TableB.Val FROM TableA INNER JOIN TableB ON TableA.Col1 = TableB.Col1 OR TableA.Col2 = TableB.Col2 OR TableA.Col2 = TableB.Col1 OR TableA.Col1 = TableB.Col2
-
==============================
2.다른 쿼리는 모든 자격 조건 중 하나에 기반을하려고하고 있는지 테이블 A의 두 열이 일치되어 있는지 확인하려면이 ... 레코드를 반환합니다, 당신은 뭔가를해야 할 것이다 ...
다른 쿼리는 모든 자격 조건 중 하나에 기반을하려고하고 있는지 테이블 A의 두 열이 일치되어 있는지 확인하려면이 ... 레코드를 반환합니다, 당신은 뭔가를해야 할 것이다 ...
select tA.Col1, tA.Col2, tB.Val from TableA tA join TableB tB on ( tA.Col1 = tB.Col1 OR tA.Col1 = tB.Col2 ) AND ( tA.Col2 = tB.Col1 OR tA.Col2 = tB.Col2 )
-
==============================
3.다음은 쓸 수 있다는 SQL의 구조입니다. 여러 사용 "AND"또는 "OR"에 의해 조인 할 수 있습니다.
다음은 쓸 수 있다는 SQL의 구조입니다. 여러 사용 "AND"또는 "OR"에 의해 조인 할 수 있습니다.
Select TableA.Col1, TableA.Col2, TableB.Val FROM TableA, INNER JOIN TableB ON TableA.Col1 = TableB.Col1 OR TableA.Col2 = TableB.Col2
-
==============================
4.
tableB.col1 = tableA.col1 OR tableB.col2 = tableA.col1 OR tableB.col1 = tableA.col2 OR tableB.col1 = tableA.col2
from https://stackoverflow.com/questions/7183364/join-on-multiple-columns by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 데이터베이스 테이블에서 계산 된 열 목록을 가져 오기 (SQL 서버) (0) | 2020.06.29 |
---|---|
[SQL] 테이블의 필드 이름을 반환하는 SQL 명령은 무엇입니까? (0) | 2020.06.29 |
[SQL] 오라클 PL / SQL에서 플러시 출력 할 수있는 방법이 있습니까? (0) | 2020.06.29 |
[SQL] MySQL의 INTO OUTFILE는 덮어 쓰기 파일을 기존의? (0) | 2020.06.29 |
[SQL] SQL Server 2005의 날짜로 하루를 추가 DateAdd 함수를 사용하여 (0) | 2020.06.29 |