我在Cassandra中有下表(CQL规范3.3.0): -
a,b,c,d
其中Users表的列名为null
。现在,我想为列b为select from Users where b = null;
的行选择所有列。我做了以下查询: -
"message="Invalid null value in condition"
但是失败了,错误= {{1}}
有什么办法可以解决吗?或者我应该从所有行中选择所有列并以编程方式手动检查null,这对于大型数据库来说当然是非常低效的。
答案 0 :(得分:3)
Cassandra不支持基于null的查询,即使对于二级索引也是如此。
您可以在表格中添加另一个字段,例如"未初始化"作为第一次插入行时设置为true的布尔值,您将在"未初始化的"上创建二级索引。字段。
当您将地图设置为某个内容时,您可以设置"未初始化"为假。然后,要查找地图为空的行,您可以查询"未初始化的行"是的。