CASSANDRA版本:2.1.10
CREATE TABLE customer_raw_data (
id uuid,
hash_prefix bigint,
profile_data map<varchar,varchar>
PRIMARY KEY (hash_prefix,id));
我在profile_data上有一个索引,我有一行其中profile_data为空。
如何编写选择查询以检索profile_data为空的行?
我尝试了以下
select count(*) from customer_raw_data where profile_data=null;
select count(*) from customer_raw_data where profile_data CONTAINS KEY null;
答案 0 :(得分:1)
基本问题。 其中condition列必须是主键或辅助索引,因此请使您的列适合,然后尝试以下查询。 试试这个..
从customer_raw_data中选择count(*),其中profile_data =&#39;&#39;;
答案 1 :(得分:1)
参考:https://issues.apache.org/jira/browse/CASSANDRA-3783
目前没有对索引空值的选择支持,并且考虑到Cassandra的设计,被认为是一个困难/禁止的问题。
答案 2 :(得分:0)
SELECT * FROM TableName WHERE colName&gt; 5000允许过滤; //工作正常
SELECT * FROM TableName WHERE colName&gt; 5000限制10允许过滤;
https://cassandra.apache.org/doc/old/CQL-3.0.html
检查&#34;允许过滤&#34;部分。