我需要将 Cassandra 中一列的值复制到另一列。
该表最近已更改为包含新列 fieldC,因此所有值都显示为 null。 FieldC 需要包含与 fieldB 相同的值(也可能包含 null)。
主键是
PRIMARY KEY (fieldA);
例如从 my_table 中选择 *;
fieldA | fieldB | fieldC
--------+-------+-------
test_1 | test_1 | null
test_2 | null | null
...
(another 2 million or more records)
...
有没有办法在 cqlsh 中使用 UPDATE 命令(将非 PK 字段的值设置为另一个非 PK 字段的值)或其他类似方法来执行此操作,而不使用 COPY?
不。您必须在应用程序层执行此操作(或者)使用一些创意 DSBulk 卸载 -> awk/sed magic -> DSBulk 加载回来。