CQL中的Cassandra OR运算符

11
我正在尝试在CQL中做类似这样的事情:
SELECT address FROM Person WHERE age= 20 or age= 25  

但是Cassandra不支持OR操作符,而且我也不能使用IN(20,25),因为年龄不是主键。有没有解决这个问题的方法?

提前感谢。

2个回答

9
你可以使用以下代码来实现:

SELECT address FROM Person WHERE age IN (20, 25)

该语句将返回年龄为20或25岁的人的地址。

2
我的理解是Cassandra只支持在分区键列上使用IN:http://www.datastax.com/dev/blog/a-deep-look-to-the-cql-where-clause - Tamar

6

您需要在客户端执行排除操作,或使用像Hive或Pig这样的分析工具。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接