跳转到主要内容
ALTER TABLE [db.]table [ON CLUSTER cluster] DELETE WHERE filter_expr
删除与指定过滤 expression 匹配的数据。此操作通过 变更 实现。
ALTER TABLE 前缀使这种语法不同于大多数其他支持 SQL 的系统。这样设计是为了表明,与 OLTP 数据库中的类似查询不同,这是一项不适合频繁使用的重型操作。ALTER TABLE 被视为一种重量级操作,要求在删除底层数据之前先将其合并。对于 MergeTree 表,建议考虑使用 DELETE FROM 查询,它执行的是轻量级删除,通常会快得多。
filter_expr 必须是 UInt8 类型。该查询会删除表中此 expression 取非零值的行。 单个查询可以包含多个以逗号分隔的命令。 查询处理的同步性由 mutations_sync 设置定义。默认情况下,它是异步的。 另请参见
最后修改于 2026年6月10日