SQL の INNER JOIN 句の使い方は?
SQL の INNER JOIN は、2 つ以上のテーブルから一致する行を取得するための方法です。2 つのテーブルを共通列の値に基づいて結合します。INNER JOIN は 2 つのテーブルが共有する行を返しますが、同時に指定した結合条件で一致する行を各テーブルから選択します。
INNER JOIN の構文は次のようになります。
SELECT 列名
FROM 表1
INNER JOIN 表2
ON 表1.列 = 表2.列;
表1と表2を結合させる表で、ON句に結合条件を指定しており、この条件は結合する列の照合を指定するために使用されます。結合条件は比較演算子(=、<、>など)を使用して、2つの表の共通列が一致するように指定できます。
INNER JOINは結合条件を満たす行を返し、かつ両方のテーブルに共通する行のみを返します。一致する行がない場合、結果は返されません。
INNER JOINの例を以下に示します。
表 1:学生さん
学生ID 姓名
1 张三
2 李四
3 王五
表2:成績
学生ID 科目 分数
1 数学 90
2 数学 85
3 数学 95
生徒の名前と数学の成績を調べるには
SELECT 学生.姓名, 成绩.分数
FROM 学生
INNER JOIN 成绩
ON 学生.学生ID = 成绩.学生ID
WHERE 成绩.科目 = '数学';
結果:
姓名 分数
张三 90
李四 85
王五 95
INNER JOINでは、学生テーブルと成績テーブルを学生IDで結合しています。学生テーブルと成績テーブルで一致する学生IDがある場合にのみ、結果が返されます。WHERE句で、教科が数学という条件を指定してクエリ結果を絞り込んでいます。