>  기사  >  데이터 베이스  >  MySQL中如何使用LEFT JOIN函数获取左表的所有记录

MySQL中如何使用LEFT JOIN函数获取左表的所有记录

王林
王林원래의
2023-07-25 09:49:172192검색

MySQL에서 LEFT JOIN 함수를 사용하여 왼쪽 테이블의 모든 레코드를 가져오는 방법

MySQL에서는 LEFT JOIN 함수를 사용하여 왼쪽 테이블의 모든 레코드를 쉽게 가져옵니다. LEFT JOIN은 오른쪽 테이블의 해당 레코드를 일치시키면서 왼쪽 테이블의 모든 레코드를 반환하는 조인 쿼리입니다.

LEFT JOIN 구문은 다음과 같습니다.

SELECT 열 이름
FROM 왼쪽 테이블
LEFT JOIN 오른쪽 테이블
ON 왼쪽 테이블.열 이름 = 오른쪽 테이블.열 이름;

그 중에서 왼쪽 테이블과 오른쪽 테이블 table은 연결해야 하는 두 테이블이고 ON 절은 조인 조건입니다. ON 절의 열 이름을 일치시켜 왼쪽 테이블과 오른쪽 테이블 간의 연결을 확인합니다.

다음은 특정 예를 사용하여 LEFT JOIN 함수를 사용하여 왼쪽 테이블의 모든 레코드를 얻는 방법을 보여줍니다.

학생 테이블(students)과 코스 선택 테이블(course_selections)이라는 두 개의 테이블이 있다고 가정합니다.

학생 테이블의 구조는 다음과 같습니다.

CREATE TABLE 학생(
id INT AUTO_INCREMENT PRIMARY KEY,
이름 VARCHAR(100) NOT NULL,
age INT NOT NULL,
성별 VARCHAR(10) NOT NULL
) ;

강좌 선택 테이블의 구조는 다음과 같습니다:

CREATE TABLEcourse_selections (
id INT AUTO_INCREMENT PRIMARY KEY,
Student_id INT NOT NULL,
course_name VARCHAR(100) NOT NULL
);

이제 우리는 수강생이 없는 경우를 포함하여 모든 학생의 정보를 확인합니다. LEFT JOIN 함수를 사용하여 이를 수행할 수 있습니다.

코드 예시는 다음과 같습니다:

SELECT Students.id, Students.name, Students.age, Students.gender, Course_selections.course_name
FROM Students
LEFT JOINcourse_selections
ON Students.id =course_selections.student_id;

위 코드에서는 먼저 학생 테이블의 id, 이름, 나이, 성별 컬럼을 선택한 후 LEFT JOIN 함수를 통해 학생 테이블과 과목 선택 테이블을 연결했습니다. 연결 조건은 학생 테이블의 id 열이 강좌 선택 테이블의 Student_id 열과 동일한 것입니다.

이렇게 하면 왼쪽 테이블의 모든 기록(즉, 학생 테이블의 모든 기록)을 얻을 수 있고, LEFT JOIN 함수를 통해 해당 과목 선택 정보를 표시할 수 있습니다. 학생이 과목을 선택하지 않은 경우 해당 과목 선택 정보는 NULL로 표시됩니다.

이런 방식으로 왼쪽 테이블의 모든 기록을 빠르고 유연하게 얻을 수 있으며, 실제 필요에 따라 오른쪽 테이블에 관련 정보를 표시할 수 있습니다.

요약하자면 MySQL의 LEFT JOIN 기능은 매우 유용한 연결 쿼리 방법으로 왼쪽 테이블의 모든 레코드를 가져오고 연결 조건에 따라 오른쪽 테이블의 관련 정보를 표시하는 데 도움이 됩니다. LEFT JOIN 기능을 유연하게 사용하면 많은 실제 문제를 쉽게 해결할 수 있습니다.

위 내용은 MySQL中如何使用LEFT JOIN函数获取左表的所有记录의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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