SQL 自己結合はデータベース クエリの基本概念であり、2 つの独立したテーブルを操作するのと同じように、同じテーブルを複数回クエリできるようになります。
セルフコネクションの定義
自己結合は、同じテーブルのエイリアスを作成することで機能し、それを 2 つの異なるテーブルとして扱うことができます。自己結合は、個別の物理コピーを作成せずに、複数のテーブルの存在をシミュレートします。
自己接続例
次の従業員テーブルについて考えてみましょう:
<code>表 emp1 Id 姓名 主管Id 1 ABC 3 2 DEF 1 3 XYZ 2</code>
各従業員の名前とその上司の名前を取得するには、次の自己結合クエリを実行します。
<code>select c1.姓名, c2.姓名 As 主管 from emp1 c1 join emp1 c2 on c1.主管Id = c2.Id</code>
出力結果:
<code>姓名 主管 ABC XYZ DEF ABC XYZ DEF</code>
このクエリでは、エイリアス c1 を emp1 テーブルのプライマリ インスタンスに割り当て、エイリアス c2 を「2 番目」のインスタンスを表すエイリアスに割り当てます。結合条件は、c1 の supervisorId と c2 の ID を一致させます。これにより、c1 から各従業員の名前を取得し、c2 から上司の名前を取得できるようになります。
以上がSQL の自己結合により、単一のテーブルを複数のテーブルとしてクエリできるようになりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。