INNER JOIN MySQL에서 INNER JOIN은 동등 조인(equijoin)이라고 불리며, 이는 동등 조인 조건을 지정해야 함을 의미합니다. CROSS와 INNER JOIN은 MySQL에서 함께 구분됩니다.
다중 테이블 조인 유형
1. 데카르트 곱(교차 조인) MySQL에서는 결과에 따라 CROSS JOIN, CROSS 또는 JOIN을 생략하거나 ','를 사용할 수 있습니다. 연결된 두 데이터 테이블의 곱이므로 일반적으로 WHERE, ON 또는 USING 조건이 있는 경우에는 사용하지 않는 것이 좋습니다. 데이터 테이블 항목이 너무 많으면 속도가 매우 느려지기 때문입니다. 일반적으로 LEFT [OUTER] JOIN 또는 RIGHT [OUTER] JOIN
을 사용합니다. 2. INNER JOIN INNER JOIN은 MySQL에서 동등 조인(equijoin)이라고 하는데, 이는 MySQL에서 동등 조인 조건을 CROSS와 INNER JOIN으로 나누어 지정해야 한다는 의미입니다. Join_table: table_reference [INNER | CROSS] JOIN table_factor [join_condition]
3. MySQL의 외부 조인은 왼쪽 외부 조인과 오른쪽 조인으로 구분됩니다. 즉, 조인 조건을 만족하는 결과를 반환하는 것 외에 왼쪽 테이블(왼쪽 Join) 또는 오른쪽 테이블의 결과(right Join)가 조인 조건을 충족하지 않는 경우에는 그에 따라 NULL을 사용합니다.
예:
SELECT * FROM table1 CROSS JOIN table2 SELECT * FROM table1 JOIN table2 SELECT * FROM table1,table2
sql문:
user表: id | name ——— 1 | libk 2 | zyfon 3 | daodao user_action表: user_id | action ————— 1 | jump 1 | kick 1 | jump 2 | run 4 | swim
결과:
select id, name, action from user as uleft join user_action a on u.id = a.user_id
분석:
user_action에 user_id=4, action=swim이라는 기록이 있지만 결과에는 나오지 않는 점,
user 테이블에서 id=3, name=daodao인 사용자는 user_action에 해당 레코드가 없지만 결과 집합에는 나타납니다
현재는 Left 조인이므로 모든 작업이 Left를 기반으로 합니다.
결과 1, 2, 3, 4는 왼쪽 테이블과 오른쪽 테이블에 모두 있는 레코드이고, 5는 왼쪽 테이블에만 있고 오른쪽 테이블에는 없는 레코드입니다
작동 원리:읽기 왼쪽 테이블에서 레코드를 선택하고 일치하는 오른쪽 테이블의 레코드(n)를 연결하여 n개의 레코드(오른쪽에 테이블이 없는 경우 결과 1과 결과 3과 같은 중복 행 포함)를 형성합니다. on 조건과 일치하는 경우 연결된 필드는 모두 null입니다. 그러면 다음 문서로 계속 진행하세요.
확장:
오른쪽 테이블에 일치하는 항목이 없으면 null이 표시되어 왼쪽 테이블에는 있지만 오른쪽 테이블에는 없는 모든 레코드를 찾는 규칙을 사용할 수 있습니다. 판결에 사용된 값은 null이 아닌 것으로 선언되어야 합니다.
예:
id | name | action ——————————– 1 | libk | jump 结果1 1 | libk | kick 结果2 1 | libk | jump 结果3 2 | zyfon | run 结果4 3 | daodao | null 结果5 ---------------------
(참고: 1. 열 값이 null인 경우 =NULL
대신 is null을 사용해야 합니다. 2. 여기서 a.user_id 열은 NOT NULL로 선언되어야 합니다.)
The 위 SQL의 결과:
select id, name, action from user as uleft join user_action a on u.id = a.user_idwhere a.user_id is NULL
위 내용은 mysql 다중 테이블 공동 쿼리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!