요약:이 튜토리얼에서,당신은 당신에 대해 배울 것입니다 MySQLLEFT JOIN
절하고 그것을 적용하는 방법을 쿼리 데이터에서 두 개 이상의 테이블이 있습니다.
MySQL LEFT JOIN 소개
LEFT JOIN
를 사용하면 두 개 이상의 테이블에서 데이터를 쿼리 할 수 있습니다. 비슷한INNER JOIN
절LEFT JOIN
는 선택적인 절SELECT
문 나타나는 즉시 후FROM
clause.,
두 테이블t1
및t2
를 조인하고 싶다고 가정합니다.
다음 문을 사용하는 방법을 보여줍니다LEFT JOIN
절에 가입하는 두 개의 테이블:
Code language: SQL (Structured Query Language) (sql)
할 때 사용하는LEFT JOIN
clause,개념의 왼쪽 테이블과 테이블에 올바른 소개한다.
위의 구문에서t1
는 왼쪽 테이블이고t2
는 오른쪽 테이블입니다.,
LEFT JOIN
절을 선택하는 데이터는 왼쪽에서 시작하 테이블(t1
). 과 일치하는 각 행의 왼쪽에서 테이블(t1
)으로 모든 행의 오른쪽에서 테이블(t2
)기반으로join_condition
.
경우 행 두 테이블에서 발생 가입하세 상태를 평가하는TRUE
,LEFT JOIN
을 결합한 열의 행에서 두 테이블을 새로운 행을 포함한 새로운 이 행에서 결과 행이 있습니다.,
경우에는 줄 왼쪽부터 테이블(t1
)과 일치하지 않는 모든 행의 오른쪽에서 테이블(t2
)에서는LEFT JOIN
여전히 결합한 열의 행 두 테이블에서 새로운 행을 포함한 새로운 행 결과 행이 있습니다. 그러나 오른쪽 테이블에서 행의 모든 열에 대해NULL
를 사용합니다.
에 다른 단어를,LEFT JOIN
반환 모든 행의 왼쪽 테이블에서 여부에 관계 없이는 행의 왼쪽에서 테이블과 일치하는 행의 오른쪽에서 테이블 또는하지 않습니다., 일치하는 항목이 없으면 오른쪽 테이블의 행 열에NULL
가 포함됩니다.
다음과 같은 벤다이어그램을 시각화하는 데 도움이는 방법LEFT JOIN
절 작동:
MySQL 왼쪽에 참 예
자의 몇 가지 예를 사용하는LEFT JOIN
clause.,
1)를 사용하여 MySQL 왼쪽 가입 절에 가입하는 두 테이블
다음 표를 참조하십시오customers
및orders
샘플에서 데이터베이스입니다.
고객의 각 수 있는 영이나 더 많은 주문을 하는 동안 각 주문에 속해야 한 고객입니다.,
이 쿼리를 사용하는LEFT JOIN
절을 찾는 모든 고객과 자신의 명령:
Code language: SQL (Structured Query Language) (sql)
또는 저장할 수 있습니다 몇몇 사용하여 입력 테이블 별칭:
Code language: SQL (Structured Query Language) (sql)
이 예에서는 다음과 같습니다.
customers
왼쪽 표와orders
오른쪽이다.LEFT JOIN
절은 주문이없는 고객을 포함한 모든 고객을 반환합니다., 는 경우 고객이기 위해,열의 값을orderNumber
및status
은NULL
.,
기 때문에 두 테이블에 고객의 주문에 동일한 열 이름(customerNumber
)에 가입하는 조건으로 동등한 연산자를 사용할 수 있는 구문을 사용하여 다음과 같다:
Code language: SQL (Structured Query Language) (sql)
다음 절은 서로 동일합니다:
Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)
경우를 대체LEFT JOIN
항에 의해INNER JOIN
clause,당신을 얻을 것이다 고객만 적어도 하나의 순서입니다.,
2)을 이용하여 MySQL 왼쪽 가입 절을 찾아 타의 추종을 불허 행
LEFT JOIN
절은 매우 유용하고 싶을 때 찾아 행에는 테이블이 없는 일치하는 행서입니다.,”>
고객을 찾는 순서는:
Code language: SQL (Structured Query Language) (sql)
3) MySQL 을 사용하여 가입 왼쪽으로 가입하는 세 가지 테이블
다음과 같은 세 가지 테이블을employees
,customers
,andpayments
:
이 예제에 사용되는 두LEFT JOIN
절에 가입하는 세 가지 테이블:employees
,customers
, 그리고payments
.,
Code language: SQL (Structured Query Language) (sql)
이 그림을 보여주는 부분 출력:
이 어떻게 작동합니다.
- 첫 번째
LEFT JOIN
반환 모든 직원 및 고객에게 표현된 각 직원 또는NULL
경우 직원하지 않는 담당하는 모든 고객입니다. - 두 번째
LEFT JOIN
지불을 반환의 각 고객에 의해 표현된 직원 또는NULL
경우 고객이 더 지불하지 않습니다.
WHERE 절의 조건 대., ON 절
다음 예제를 참조하십시오.
Code language: SQL (Structured Query Language) (sql)
이 예제에 사용되는LEFT JOIN
절을 쿼리 테이블에서 데이터를orders
및orderDetails
. 쿼리는 주문 번호10123
의 주문 및 해당 광고 항목을 반환합니다.,
그러나,이동할 경우 조건에서WHERE
절ON
절:
Code language: SQL (Structured Query Language) (sql)
이것은 다른 의미입니다.,
이 경우에는,쿼리에는 모든 주문을 반환합니다 하지만 순서10123
있을 것이다 품목은 그와 관련된 다음과 같이 그림:
통지한INNER JOIN
절 상태에서ON
항에 해당하는 상태에서WHERE
clause.
이 자습서에서는 MySQLLEFT JOIN
절을 사용하여 두 개 이상의 테이블에서 데이터를 조인하는 방법을 배웠습니다.,이 튜토리얼이 도움이 되었습니까?