MySQL の同じテーブルで複数の結合操作を実行する方法
複数のテーブルを操作する場合、それらのテーブルを結合する必要がある場合があります。同じテーブルの複数のインスタンス。 MySQL では、これは複数の LEFT JOIN ステートメントを使用して実現できます。
次のシナリオを考えてみましょう。「domains」と「reviews」という 2 つのテーブルがあり、次の列があります:
各レビューに関連付けられた両方のドメイン名 (「ドメイン」テーブルから) を表示するには、以下が必要です「ドメイン」テーブルで 2 つの LEFT JOIN を実行します。クエリは次のようになります。
SELECT toD.dom_url AS ToURL, fromD.dom_url AS FromURL, rvw.* FROM reviews AS rvw LEFT JOIN domain AS toD ON toD.Dom_ID = rvw.rev_dom_for LEFT JOIN domain AS fromD ON fromD.Dom_ID = rvw.rev_dom_from
2 番目の「domains」テーブルに「toD」および「fromD」という別名を付けることで、結合する列と取得するドメイン名を指定できます。 SELECT リストでは、適切なテーブル エイリアスを使用して目的のドメイン名を参照できます。
要約すると、MySQL で同じテーブルに 2 回結合するには、異なるテーブル エイリアスを持つ複数の LEFT JOIN ステートメントを使用するだけです。これにより、単一のクエリ内で同じテーブルの複数の列にアクセスできるようになります。
以上がMySQL で同じテーブルを 2 回結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。