gpt4 book ai didi

nosql - Cassandra CQL3 使用复合主键从表中选择行键

转载 作者:行者123 更新时间:2023-12-04 22:32:12 24 4
gpt4 key购买 nike

我将 Cassandra 1.2.7 与使用 CQL3 的官方 Java 驱动程序一起使用。

假设一个表由

CREATE TABLE foo ( 
row int,
column int,
txt text,
PRIMARY KEY (row, column)
);

然后我想执行相当于 SELECT DISTINCT row FROM foo
根据我的理解,应该可以在 Cassandra 的数据模型中有效地执行此查询(考虑到复合主键的实现方式),因为它只会查询“原始”表。

我搜索了 CQL 文档,但没有找到任何选项。

我的备份计划是创建一个单独的表 - 像
CREATE TABLE foo_rows (
row int,
PRIMARY KEY (row)
);

但这需要保持两者同步的麻烦 - 写入 foo_rows 以进行 foo 中的任何写入(也是性能损失)。

那么有没有办法查询不同的行(分区)键?

最佳答案

根据 documentation ,从 CQL 3.11 版开始,cassandra 理解 DISTINCT 修饰符。
所以你现在可以写

SELECT DISTINCT row FROM foo

关于nosql - Cassandra CQL3 使用复合主键从表中选择行键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18559174/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com