Cassandra CQL select'!='操作符

问题描述:

我知道!=在CQL select语句中不受支持。而且,我也知道!=查询效率不高。但即使我准备接受过滤,为什么不允许?Cassandra CQL select'!='操作符

例如,我想是这样的:Select * from foo where PK='something' and CK1='something' and CK2!='something' allow filtering

我的理由是,基数会PKCK1后足够低,我不关心,如果有卡桑德拉读取所有剩余的行。

问题:除了执行应用程序端过滤器之外,是否有任何方法仅使用CQL来执行此操作?

不,没有其他办法。您必须从应用程序层进行过滤。

卡桑德拉支持这些条件运算符WHERE子句中:CONTAINS,CONTAINS KEY,IN,=,>,> =,<,或者< =,但不是所有的在某些情况下。

来源:https://docs.datastax.com/en/cql/3.1/cql/cql_reference/select_r.html

+0

确定。似乎是这样的。 – hummingV