ホームページ >データベース >mysql チュートリアル >3 番目のテーブルを使用して、直接の外部キー関係がないテーブルを結合するにはどうすればよいですか?
リンクテーブルを介したテーブルの接続: SQL アプローチ
このガイドでは、3 番目の中間テーブルを使用して、直接の外部キー関係がないデータベース テーブルをリンクする方法について説明します。
1.外部キー制約を理解する
外部キーは、他のテーブルの主キーを参照することでデータの整合性を維持します。 有益ではありますが、テーブルを結合するために厳密に必要というわけではありません。
2.中間テーブルを使用したテーブルの結合
2 つのテーブルに外部キーの直接接続がない場合、両方のテーブルへの外部キーを含む中間テーブルがブリッジとして機能します。 Tree
外部キーを使用して Species
テーブルを Tr_species
テーブルに結合し、Tree
外部キーを介して Forest
を Tr_forest
テーブルにリンクすることで、これを説明します。
3.フィルタリングと並べ替えによる結果の絞り込み
テーブルを結合した後、WHERE
句と ORDER BY
句を使用して結果を絞り込むことができます。 ここでは、'ARCTIC'
の場所をフィルターし、森林名と種名で並べ替えます:
<code>WHERE Fo_loc='ARCTIC' ORDER BY Fo_name, Sp_name</code>
SQL クエリの例
次の SQL クエリは、完全なプロセスを示しています。
<code class="language-sql">SELECT Forest.Fo_name, Species.Sp_name, Species.Sp_woodtype FROM Forest INNER JOIN Tree ON Forest.Fo_name = Tree.Tr_forest INNER JOIN Species ON Tree.Tr_species = Species.Sp_name WHERE Fo_loc='ARCTIC' ORDER BY Fo_name, Sp_name;</code>
概要
この手法は、中間テーブルを使用して、直接の外部キー関係なしでテーブルを結合できる方法を示しています。これは、複雑なデータ構造を処理する SQL の多用途性を強調し、外部キーは便利ではあるものの、テーブル結合には必須ではないことを示しています。
以上が3 番目のテーブルを使用して、直接の外部キー関係がないテーブルを結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。