首页 > 解决方案 > cassandra 选择查询以在至少一列值条件为真时选择行

问题描述

我有一个要求,其中有六个金额列。我想运行一个选择查询,当任一列值为 >0 时为我提供行。我尝试了 OR 条件,但不支持。还有其他选择吗?我尝试选择记录检查每列的 >0 值。但是如果我们需要检查很多列,这种方法会让人头疼。

示例记录:

|id| col1| col2| col3| col4| col5| col6|
----------------------------------------- 
|1 | 2.0 |   0 |   0 |   0 |   0 |   0 |
|2 |   0 |   0 | 2.0 | 3.0 | 5.0 |  66 |
|3 |   0 |   0 |   0 |   0 |   0 |   0 |
|4 | null| null| null| null| null| null|

我需要的是 id 1 2 的记录,其中至少有一列值 > 0

标签: cassandraspring-data-cassandra

解决方案


你不能像这样在 Cassandra 中查询。要获得这样的结果,您可能需要依赖于您的应用程序(例如获取行然后检查列)。如果您正在扫描完整的数据库,那么您可以使用 spark 进行更快的处理。


推荐阅读