30 列と 500,000 行のテーブルSalesがあるとします。テーブル内の 400,000 ( の場所) を削除したいと思います"toDelete='1'"
。
しかし、私にはいくつかの制約があります:
- テーブルは「頻繁に」読み書きされ、長い「削除」に時間がかかり、テーブルを長時間ロックしたくありません
- トランザクション ログをスキップする必要がありますが (a のように
TRUNCATE
)、実行中に"DELETE ... WHERE..."
(条件を設定する必要があります)、これを行う方法が見つかりませんでした...
変換するためのアドバイスは大歓迎です
DELETE FROM Sales WHERE toDelete='1'
よりパーティション化され、おそらくトランザクションログがないものに。