Перейти к содержимому
Последнее обновление

TRUNCATE-TABLE

Описание​

Эта инструкция используется для очистки данных указанной таблицы и партиции.

Синтаксис​

TRUNCATE TABLE [<db_name>.]<table_name>[ PARTITION ( <partition_name1> [, <partition_name2> ... ] ) ];

Обязательные параметры​

1.<db_name>

Задаёт идентификатор (имя) базы данных.

Идентификаторы должны начинаться с буквы (или любого символа соответствующего языка, если включена поддержка имён в unicode) и не могут содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Database).

В качестве идентификаторов нельзя использовать зарезервированные ключевые слова.

Подробнее см. разделы «Требования к идентификаторам» и «Зарезервированные ключевые слова».

2.<table_name>

Задаёт идентификатор (имя) таблицы, который должен быть уникальным в пределах базы данных, в которой находится таблица.

Идентификаторы должны начинаться с буквы (или любого символа соответствующего языка, если включена поддержка имён в unicode) и не могут содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Object).

В качестве идентификаторов нельзя использовать зарезервированные ключевые слова.

Подробнее см. разделы «Требования к идентификаторам» и «Зарезервированные ключевые слова».

Необязательные параметры​

1.<partition_name>

Задаёт идентификатор (имя) партиции.

Идентификаторы должны начинаться с буквы (или любого символа соответствующей письменности, если включена поддержка имён в unicode) и не могут содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Object).

В качестве идентификаторов нельзя использовать зарезервированные ключевые слова.

Подробнее см. разделы «Требования к идентификаторам» и «Зарезервированные ключевые слова».

Требования к правам доступа​

Пользователь, выполняющий эту команду SQL, должен иметь как минимум следующие права:

ПравоОбъектПримечания
Drop_privТаблицаTRUNCATE TABLE относится к операциям DROP для таблиц

Примечания по использованию​

  • Эта инструкция очищает данные, но сохраняет таблицу или партицию.
  • В отличие от DELETE, эта инструкция позволяет очистить указанную таблицу или партицию только целиком и не поддерживает условия фильтрации.
  • В отличие от DELETE, очистка данных таким способом не влияет на производительность запросов.
  • Данные, удалённые этой операцией, невозможно восстановить.
  • При выполнении этой команды таблица должна находиться в состоянии NORMAL, то есть такие операции, как SCHEMA CHANGE, не допускаются.
  • Эта команда может привести к сбою выполняющейся загрузки данных.

Примеры​

  1. Очистка таблицы tbl в базе данных example_db

    TRUNCATE TABLE example_db.tbl;
  2. Очистка партиций p1 и p2 таблицы tbl

    TRUNCATE TABLE tbl PARTITION(p1, p2);