TRUNCATE TABLE
説明
このステートメントは、指定されたテーブルおよびパーティションデータを切り捨てるために使用されます。
構文:
TRUNCATE TABLE [db.]tbl[ PARTITION(PartitionName1, PartitionName2, ...)]
注意:
- このステートメントは、テーブルまたはパーティションを保持しながらデータを切り捨てるために使用されます。
- DELETE とは異なり、このステートメントは指定されたテーブルまたはパーティション全体を空にすることしかできず、フィルタリング条件を追加することはできません。
- DELETE とは異なり、この方法を使用してデータをクリアしても、クエリパフォーマンスには影響しません。
- このステートメントはデータを直接削除します。削除されたデータは復元できません。
- この操作を行うテーブルは、NORMAL 状態でなければなりません。たとえば、SCHEMA CHANGE が進行中のテーブルに対して TRUNCATE TABLE を実行することはできません。
例
-
example_db
の下のテーブルtbl
を切り捨てます。TRUNCATE TABLE example_db.tbl;
-
テーブル
tbl
のパーティションPartitionName1
とPartitionName2
を切り捨てます。TRUNCATE TABLE tbl PARTITION(PartitionName1, PartitionName2);