Перейти к основному содержанию
ALTER TABLE [db.]table [ON CLUSTER cluster] DELETE WHERE filter_expr
Удаляет данные, соответствующие указанному фильтрующему выражению. Реализовано в виде мутации.
Префикс ALTER TABLE отличает этот синтаксис от большинства других систем с поддержкой SQL. Он нужен, чтобы показать: в отличие от похожих запросов в OLTP-базах данных, это ресурсоемкая операция, не предназначенная для частого использования. ALTER TABLE считается тяжеловесной операцией, которая требует слияния базовых данных перед их удалением. Для таблиц MergeTree рассмотрите возможность использования запроса DELETE FROM, который выполняет легковесное удаление и может быть значительно быстрее.
filter_expr должен иметь тип UInt8. Запрос удаляет строки таблицы, для которых это выражение принимает ненулевое значение. Один запрос может содержать несколько команд, разделенных запятыми. Синхронность выполнения запроса определяется настройкой mutations_sync. По умолчанию запрос выполняется асинхронно. См. также
Последнее изменение 10 июня 2026 г.