クエリ:
Delete from test_table;
(私は毎日実行する手順でこの削除コマンドを使用しています)
このテーブルには、scenario_id、item_id などの 2 つの列名が含まれています。これら 2 つの列は複合主キーです。したがって、各 scenario_id には 200 万の item_id があります。このテーブルをすばやく削除する方法。
テーブルを削除する最速の方法はDROP TABLE test_table
コマンドであり、コマンドを使用してテーブルを再作成しますCREATE TABLE...
。DROP TABLE...
すぐにテーブルを削除します。実際には、テーブルをごみ箱に移動します。PURGE RECYCLEBIN
テーブルを完全に削除したい場合は、そうする必要があります。
テーブル内のデータを削除する他の方法は、 を使用することTRUNCATE TABLE...
です。これは よりも少し遅くなりますがDROP TABLE...
、 よりもはるかに高速ですDELETE FROM...
。テーブルを切り捨てた後にデータをロールバックする方法がないため、使用するときは注意が必要ですTRUNCATE TABLE
。
create new table as select * from old_table where ...
に新しい古いデータをドロップして新しい名前を古い名前に変更すると、はるかに高速になります。exchanging
パーティション化されたテーブルのパーティションによって同様の目標を達成できます。