ホームページ > データベース > mysql チュートリアル > ある SQL テーブルから別の SQL テーブルの ID に基づいて行を効率的に削除するにはどうすればよいですか?

ある SQL テーブルから別の SQL テーブルの ID に基づいて行を効率的に削除するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-05 04:17:40
オリジナル
376 人が閲覧しました

How to Efficiently Delete Rows from One SQL Table Based on IDs in Another?

別のテーブルに基づく行の削除

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 の行が識別され、削除の対象になります。

注:

  • DELETE ステートメントではエイリアスを使用することをお勧めします。 .
  • クエリを実行する前にクエリ全体を強調表示して、誤った削除を防ぎます。特定の行ではなくテーブル全体。

以上がある SQL テーブルから別の SQL テーブルの ID に基づいて行を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート