如何列出复合分区键的所有唯一组件-Cassandra

如何列出复合分区键的所有唯一组件-Cassandra,cassandra,cql,Cassandra,Cql,给定一个具有复合分区键的表,如: CREATE TABLE testtable ( column1 text, column2 text, column3 text, column4 text, column5 text, column6 text, PRIMARY KEY ((column1, column2, column3, column4)) ) 如何仅获取一个分区列的所有唯一值?现在,我知道这是行不通的: SELECT DISTINCT column2 from testtable;

给定一个具有复合分区键的表,如:

CREATE TABLE testtable (
column1 text,
column2 text,
column3 text,
column4 text,
column5 text,
column6 text,
PRIMARY KEY ((column1, column2, column3, column4))
)
如何仅获取一个分区列的所有唯一值?现在,我知道这是行不通的:

SELECT DISTINCT column2 from testtable;
然而,我能做到

SELECT DISTINCT column1, column2, column3, column4 from testtable;
那么,有没有一种方法(在CQL中,因为该查询的结果可能非常大)可以像在SQL中一样查询该查询结果?大概是这样的:

SELECT DISTINCT column2 FROM (SELECT DISTINCT column1, column2, column3, column4 from testtable);

这不管用。或者我真的必须使用Python(或其他替代方法)来实现这一点吗?

简单地说,在CQL中无法实现这一点。整个分区键定义了哪个Cassandra节点负责处理数据以及对数据的查询。因此,它必须始终完整地给出。

简单地说,在CQL中没有实现这一点的方法。整个分区键定义了哪个Cassandra节点负责处理数据以及对数据的查询。因此,它总是必须完整地给出