您可以使用此基本查询格式更新数据。详情请参考更新操作(UPDATE)。
ALTER TABLE [db.]table UPDATE column1 = expr1 [, ...] [IN PARTITION partition_id] WHERE filter_expr;
说明
ALTER TABLE
的前缀使这个语法与其他大多数支持 SQL 的系统不同。它的目的是表明,与 OLTP 数据库中的类似查询不同,这是一个繁重的操作,不是为频繁使用而设计。
参数说明:
[IN PARTITION partition_id]:如果表数据量较大,或者表的 part 数量较多,建议添加该条件,分区级别执行 update 操作,更快、更稳定。
使用限制:
filter_expr
必须是UInt8
类型。这个查询将指定列的值更新为行中相应表达式的值,对于这些行,filter_expr
取值为非零。使用CAST
操作符将数值映射到列的类型上。不支持更新用于计算主键或分区键的列。alter table table_alter update bool=1 where uint8=21;