Mysql의 조인 쿼리에 대한 자세한 설명
1. 기본 개념
두 테이블의 각 행을 "두 테이블의 수평 도킹"으로 연결하여 모든 결과 행 결과를 얻습니다.
가정:
테이블 A에는 n1개의 행과 m1개의 열이 있습니다.
테이블 B에는 n2개의 행과 m2개의 열이 있습니다.
테이블 A와 테이블 B가 "연결"되면 다음이 됩니다.
n1*n2개 행;
m1+m2 열.
2 도킹(연결)된 후의 결과는 다음과 유사합니다.
3 연결 쿼리의 기본 형식:
에서 표 1 【연결 방법 ] 조인 표 2 [연결 조건에 따라]
조인 쿼리 분류
1. Cross Join
은 실제로 두 테이블 간의 조인의 기본 개념입니다. 가입 후 "필터링" 결과 없이 "모든 데이터"를 얻었습니다. 필터링은 연결 조건을 의미합니다.
즉, 교차 연결은 조건 없는 "모든 연결"입니다. 이를 데카르트 곱이라고 합니다.
교차 연결은 일반적으로 데이터를 연결한 후 데이터의 각 행의 의미가 "손실"될 수 있으므로 실용적인 가치가 없습니다.
형식:
테이블 1에서 [교차] 테이블 2 조인;
또는:
테이블 1, 테이블 2에서
내부 조인
형식:
테이블 1에서 [내부] 테이블 2 조인 1. 필드 1 = 표 2. 필드 2;
의미:
"교차 연결"의 결과로 설정된 연결 조건(다음 조건)을 충족하는 행의 데이터를 얻습니다. 다음과 같이 "의미 없는 데이터"가 있습니다.
2. 내부 연결의 결과를 살펴보세요.
3. 결과는 다음과 같습니다.
4. 볼 수 있는 내용은 다음과 같습니다.
내부 조인은 실제로 교차 연결의 데이터 결과에서 "의미 있는" 데이터 행을 찾는 것입니다. 그리고 교차 연결에서 그 안에 있는 데이터 중 일부는 의미가 있고 일부는 그렇지 않습니다(잘못된 데이터).
단, 주의 사항:
1. 이러한 연결 조건은 임의로 설정하는 것이 아니라, 테이블 간의 실제 관계에 따라 설정해야 합니다. 일반적으로 해당 관계는 두 테이블 간의 "1차 외래 키 관계"입니다. 두 필드의 값은 동일합니다.
2. 연결 쿼리는 앞서 배운 "외래 키 관계"와 본질적으로 논리적으로 일치함을 알 수 있습니다.
3. 그러나 내부 조인을 수행할 때 두 테이블에 외래 키 관계가 있어야 한다고 요구하지는 않습니다. 단지 실용적인 관점에서 외래 키 관계(데이터 관계)가 있다는 점만 이해하면 됩니다. 내부 조인을 사용하면 관계가 설정됩니다.
위 내용은 MySQL의 조인 쿼리에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!