尝试返回特定字段为null或不为null的所有行。
select * from ADDRESS where addr1 = null;
或
select * from ADDRESS where addr1 = 'NULL';
addr1可以是布尔值或文本字段。
我已尝试!= null
,is null
,<> null
和isnull(addr1, 'NULL')
但我得到
no viable alternative at input '='
或
no index columns present in by-columns clause with "equals' operator"
使用Cassandra 1.1.1&amp; Java 1.7_05
答案 0 :(得分:6)
CQL没有NULL的概念(还有 - 见CASSANDRA-3783)。正确的做法取决于您的具体情况。
答案 1 :(得分:0)
一种方法是使用 cqlsh 来选择所需的列 - 通常是主键和使用 -e 选项的感兴趣的列,并使用 grep 来识别空条目。在查询中也设置“分页关闭”以获取所有结果,否则默认情况下只会返回 100 行。
cqlsh