任何列上的Cassandra CQL非等运算符
嗨,我有什么办法可以用吗!=操作员在Cassandra中使用CQL? 我正在尝试使用我的columnfamily上的运算符,但当我尝试使用它时,它会显示:任何列上的Cassandra CQL非等运算符,cassandra,cql,Cassandra,Cql,嗨,我有什么办法可以用吗!=操作员在Cassandra中使用CQL? 我正在尝试使用我的columnfamily上的运算符,但当我尝试使用它时,它会显示: cqlsh:EPCContent> select * from "MediaCategoryGroup" where "MCategoryID"!=1; 我得到这个错误: Invalid syntax at line 1, char 55 select * from "MediaCategoryGroup" where "MCat
cqlsh:EPCContent> select * from "MediaCategoryGroup" where "MCategoryID"!=1;
我得到这个错误:
Invalid syntax at line 1, char 55
select * from "MediaCategoryGroup" where "MCategoryID"!=1;
^
如果查看,您将看到WHERE
子句必须“由作为主键一部分的列上的关系和/或在这些列上定义了辅助索引组成”。您的列是否符合该规范
仅供参考,这是关系运算符的完整列表:
“=”|“;”|“=”|“!=”|在| CONTAINS | CONTAINS KEY
中,只有当该字段是主键时,我们才可以使用“|”=”。是的,在Cassandra中,您只能在主键字段(也可以从复合键)或“辅助索引”上使用并不是所有这些都是可能的……您如何获得特定字段不为空的所有行?@DavidTorres我不确定您是否能够直接在Cassandra查询中这样做。如前所述,您不能使用“!=”运算符(不确定在最新版本的Cassandra上是否已更改)。此外,我相信您可以在筛选/运算符(主键或复合键的一部分)中使用的字段都需要不同于null。。。因此,您很可能需要读取相关元素,然后在应用程序上执行一些其他过滤。