MySQL クエリ接続の概要
データベース管理において、クエリ接続は非常に重要な部分です。結合とは、データ クエリを完了するために、テーブル間の関係に基づいて 2 つ以上のテーブルを結合するプロセスを指します。 MySQL では、JOIN ステートメントを使用してクエリ接続を実装できます。この記事では、MySQL クエリ接続の使用方法について詳しく説明します。
MySQL クエリ接続の分類
MySQL クエリ接続は、主に、内部結合、外部結合、およびクロス結合の 3 つのカテゴリに分類されます。
FROM table1
INNER JOIN table2
ON table1.column1 = table2。このうち、col1、col2、... は返される列で、table1 と table2 はクエリ対象のテーブル、column1 と column2 はテーブルを接続する列です。
OUTER JOIN
FROM table1
LEFT JOIN table2ON table1.column1 = table2。 column2;
右結合: 右結合は左結合と似ていますが、左のテーブルと右のテーブルの役割が逆になる点が異なります。
FROM table1
RIGHT JOIN table2ON table1.column1 = table2。 column2;
注: MySQL には FULL OUTER JOIN (完全外部結合) もありますが、MySQL はそれをサポートしていません。したがって、UNION ステートメントを使用して完全外部結合をシミュレートできます。
クロス結合 (CROSS JOIN)
FROM table1
CROSS JOIN table2;
その内、 Col1、col2、... は返される列で、table1 と table2 はクエリされるテーブルです。
age | ##1 | |
---|---|---|
2 | トム | |
3 | # #ジェリー | |
4 | ボブ | |
# #コース テーブル: |
course_name
1 | 数学 | |
---|---|---|
2 | 英語 | 2 |
3 | 科学 | 2 |
4 | 歴史 | 3 |
各学生が選択したコースをクエリしたいので、次の SQL ステートメントを使用できます: | SELECT Student.name, course.course_name | FROM Student | INNER JOIN course
name
ジャック | 数学 |
---|---|
英語 | |
科学 | |
歴史 | |
上記の学生テーブルとコース テーブルを例として、各学生 (選択していない学生も含む) が選択したコースをクエリする場合、コースを選択しました。次の SQL ステートメントを使用できます: | SELECT Student.name, course.course_name |
name
ジャック | 数学 |
---|---|
#トム | ##科学 |
ジェリー | 歴史 |
ボブ | NULL |
# #例 3: 右結合 | 各コースの学生 (コースを選択していない学生も含む) をクエリする場合は、引き続き上記の学生テーブルとコース テーブルを例として使用します。次の SQL ステートメントを使用できます: |
RIGHT JOIN course | ON Student.id = course.student_id;このクエリは次の結果を返します: |
ジャック
#トム | ##英語||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ジェリー | 歴史 | |||||||||||||||||||||||||||
NULL | 地理 | |||||||||||||||||||||||||||
id | 名前 |
---|---|
A | |
B | |
C |
FROM table1 t1
CROSS JOIN table1 t2;
name | |
---|---|
A | |
B | |
C | |
A | |
#B | ##B |
C | |
##C | ##B |
##C | |
MySQL クエリ接続は SQL 言語の重要な部分であり、関係を含むデータのクエリに役立ちます。この記事では、内部結合、左結合、右結合、クロス結合の 4 種類の結合の構文と適用例を紹介します。この記事が MySQL クエリ接続の使用に役立つことを願っています。 |
以上がmysqlクエリ接続の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。