我想使用更新查询对所有行进行批量更新。我知道有BATCH查询。但是,我必须列出所有行..
所以,我想做类似的事情:
UPDATE test set value = 0x31其中id in(SELECT id from test);
有没有办法做上面这样的事情?
这个想法和SQL一样。选择所有行&并将它们插入“in”部分。
我想要这样做的原因是我在现有列族中添加了一个新列,该列在新创建的列中创建了空数据。 并且,这会导致从Cassandra检索数据时出错。
答案 0 :(得分:0)
我认为此处显示的示例可能有所帮助:http://www.datastax.com/documentation/cql/3.1/cql/cql_reference/update_r.html?scroll=reference_ds_g4h_qzq_xj__description_unique_31
一次更新多行中的列:
更新用户 SET state ='TX' WHERE user_uuid IN(88b8fd18-b1ed-4e96-bf79-4280797cba80, 06a8913c-c0d6-477c-937D-6c1b69a95d43, bc108776-7cb5-477f-917D-869c12dfffa8);