>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 세 개의 테이블을 올바르게 LEFT JOIN하는 방법은 무엇입니까?

MySQL에서 세 개의 테이블을 올바르게 LEFT JOIN하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-26 01:25:09308검색

How to Correctly LEFT JOIN Three Tables in MySQL?

MySQL 마스터하기 LEFT JOIN: 세 테이블 연결

MySQL 데이터베이스에서 여러 테이블을 작업할 때 조인 방법을 이해하는 것이 중요합니다. 효과적으로. 일반적인 문제 중 하나는 세 개 이상의 테이블에서 레코드를 연결하는 것입니다.

제공된 예를 생각해 보십시오. 세 개의 테이블(Persons, Fears 및 Person_Fear)이 있으며 목표는 관련된 두려움(또는 관련된 두려움)과 함께 모든 사람을 표시하는 것입니다. 두려움이 없음).

잘못된 LEFT JOIN 예시

제공된 초기 코드에는 LEFT JOIN 조건에 오류가 포함되어 있습니다. 다음 줄은 다음과 같습니다.

ON person_fear.personid = person_fear.fearid

Person_Fear.PersonID를 Person_Fear.FearID에 잘못 조인합니다. 이는 말도 안되는 일입니다.

올바른 LEFT JOIN 구현

올바르게 하려면 테이블을 조인하려면 조건을 수정해야 합니다. to:

ON Person_Fear.PersonID = Persons.PersonID

Person_Fear.PersonID를 Persons 테이블의 해당 필드에 연결합니다.

대체 LEFT JOIN 구문

또 다른 유효한 접근 방식 동일한 LEFT JOIN에 다음을 사용하는 것입니다 구문:

LEFT JOIN Person_Fear ON Person_Fear.PersonID = Persons.PersonID
LEFT JOIN Fears ON Person_Fear.FearID = Fears.FearID

이 구문은 Persons와 Person_Fear 사이의 LEFT JOIN과 그 뒤에 Person_Fear와 Fears 사이의 또 다른 LEFT JOIN을 명시적으로 지정합니다.

결과 쿼리

이러한 수정된 접근 방식 중 하나를 사용하면 쿼리는 Persons의 모든 레코드를 반환합니다. Person_Fear 및 Fears 테이블에 연관된 두려움이 없는 테이블도 마찬가지입니다. 각 사람에 대해 연관된 Fear(s) 또는 연결된 두려움이 없으면 NULL을 표시합니다.

LEFT JOIN의 올바른 사용법을 이해하면 여러 테이블을 효과적으로 쿼리하고 원하는 결과를 검색할 수 있습니다. MySQL 데이터베이스의 복잡한 데이터 관계를 위해.

위 내용은 MySQL에서 세 개의 테이블을 올바르게 LEFT JOIN하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.