ホームページ >データベース >mysql チュートリアル >複数の SQL テーブルで内部結合を正しく実行するにはどうすればよいですか?
内部結合は、共通の列値に基づいて複数のテーブルの行を結合し、一致する行のみを返す SQL 操作です。条件は満たされています。 3 つ以上のテーブルを操作する場合、テーブルのペアごとに結合基準を指定することが重要です。
指定されたコードでは、次の構文で 1 つの外部キーを使用して 3 つのテーブルを内部結合しようとしていました。 :
SELECT * FROM table1 INNER JOIN table2 INNER JOIN table3 ON table1.primaryKey=table2.table1Id=table3.table1Id
結合基準が正しくないため、このクエリは結果を返しません。複数のテーブルを正しく結合するには、テーブルのペアごとに結合条件を個別に指定する必要があります。同じ外部キーを持つ 3 つのテーブルを内部結合するための正しい構文は次のとおりです。
SELECT * FROM table1 INNER JOIN table2 ON table1.primaryKey=table2.table1Id INNER JOIN table3 ON table1.primaryKey=table3.table1Id
この修正されたクエリでは、各テーブル ペア (table1 と table2、table1 と table3) の結合基準が明示的に指定されており、つまり、3 つのテーブルすべてから一致する外部キー値を持つ行のみが返されます。
以上が複数の SQL テーブルで内部結合を正しく実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。