別のテーブルに基づく行の削除
SQL では、行の存在に基づいてテーブルから行を削除する必要が生じることは珍しくありません。別のテーブルで。次のシナリオを考えてみましょう:
DB クエリ:
このクエリをまったく覚えていないようです!
DB クエリの目標:
Table1 内の ID が同じ行をすべて削除したい表2.これは次のように表現できます。
DELETE table1 t1 WHERE t1.ID = t2.ID
サブクエリのアプローチは有効ですが、パフォーマンスを向上させるために JOIN を使用してこれを実現する方法を検討します。
DB クエリ ソリューションを使用します。 JOIN:
DELETE t1 FROM Table1 t1 JOIN Table2 t2 ON t1.ID = t2.ID;
JOIN を利用して、行間の関係を確立します。 Table1 と Table2 の ID 列に基づいて。 Table2 の行と ID 値を共有する Table1 の行が識別され、削除の対象になります。
注:
以上がある SQL テーブルから別の SQL テーブルの ID に基づいて行を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。