sql >> データベース >  >> RDS >> Sqlserver

500,000 行以上のテーブルで Truncate Table を使用せずに行を効率的に削除する方法

    DELETE FROM TableName を呼び出す 1 回の大規模なトランザクションで全体の削除を行います。これは高価です。

    バッチで行を削除する別のオプションを次に示します:

    deleteMore:
    DELETE TOP(10000) Sales WHERE toDelete='1'
    IF @@ROWCOUNT != 0
        goto deleteMore
      

    1. SQL-行から枯渇した値を減算する

    2. 同じテーブル内の複数の列に対して内部結合を実行する

    3. mysql GROUP_CONCAT

    4. バインド変数を使用してDMLを挿入します:即時ステートメントの実行の句を使用します