ホームページ > データベース > mysql チュートリアル > MySQL で LEFT JOIN 関数を使用して左側のテーブルからすべてのレコードを取得する方法

MySQL で LEFT JOIN 関数を使用して左側のテーブルからすべてのレコードを取得する方法

王林
リリース: 2023-07-25 09:49:17
オリジナル
2232 人が閲覧しました

MySQL で LEFT JOIN 関数を使用して、左側のテーブルのすべてのレコードを取得する方法

MySQL では、LEFT JOIN 関数を使用して、左側のテーブルのすべてのレコードを簡単に取得できます。 LEFT JOIN は、左側のテーブルのすべてのレコードを返し、右側のテーブルの対応するレコードを照合する結合クエリです。

LEFT JOIN の構文は次のとおりです。

SELECT 列名
FROM 左テーブル
LEFT JOIN 右テーブル
ON 左テーブル.列名 = 右テーブル。列名;

このうち、左のテーブルと右のテーブルが接続する必要がある2つのテーブルであり、ON句が接続条件です。 ON 句の列名を照合して、左側のテーブルと右側のテーブルの関連性を判断します。

以下では、特定の例を使用して、LEFT JOIN 関数を使用して左側のテーブル内のすべてのレコードを取得する方法を示します。

学生テーブル (students) とコース選択テーブル (course_selections) の 2 つのテーブルがあるとします。

students テーブルの構造は次のとおりです。

CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
age INT NOT NULL,
性別 VARCHAR(10) NOT NULL
);

コース選択テーブルの構造は次のとおりです:

CREATE TABLE course_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 JOIN course_selections
ON students.id = course_selections.student_id;

上記のコードでは、最初に学生テーブルの id、名前、年齢、性別の列を選択し、次に学生テーブルとコース選択テーブルを接続します。 LEFT JOIN 関数を使用します。接続条件は、studentテーブルのid列とコース選択テーブルのstudent_id列が等しいことです。

このようにして、左側のテーブルのすべてのレコード (つまり、student テーブルのすべてのレコード) を取得し、LEFT JOIN 関数を使用して、対応するコース選択情報を表示することができます。学生がコースを選択していない場合、該当するコース選択情報は NULL として表示されます。

このようにして、左側のテーブルのすべてのレコードを迅速かつ柔軟に取得し、実際のニーズに応じて関連情報を右側のテーブルに表示できます。

要約すると、MySQL の LEFT JOIN 関数は非常に便利な接続クエリ メソッドであり、接続条件に従って左側のテーブルのすべてのレコードを取得し、右側のテーブルの関連情報を表示するのに役立ちます。 LEFT JOIN 関数を柔軟に使用することで、多くの実際的な問題を簡単に解決できます。

以上がMySQL で LEFT JOIN 関数を使用して左側のテーブルからすべてのレコードを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート