TRUNCATE (SQL)

TRUNCATE または TRUNCATE TABLE ステートメントは、テーブルから全ての行を削除するSQLである。データベースが持つ整合性を維持する機構をスキップすることで高速な削除を実現している場合が多い。削除する行それぞれを記録するためのトランザクションログの出力を避けることで、効率的に全ての行を削除できる。

「TRUNCATE TABLE 表名」は「DELETE FROM 表名」とほぼ等価だが、以下の点で異なる。

構文

TRUNCATE [TABLE] テーブル名 [, テーブル名]

多くのデータベース製品では TABLE は省略可能である。