Solr Lucene查询字段范围或其缺失

Solr Lucene查询字段范围或其缺失,solr,lucene,Solr,Lucene,作为Lucene的新手,我希望找到某个字段在给定范围内或完全不存在的文档。也就是说,我想结合这两个查询的结果: q=something AND field:[lower TO upper] q=something AND -field:[* TO *] 任何一个查询都会给出所需的结果,但当我尝试将这两个查询组合在一起时,却一无所获: q=something AND (field:[lower TO upper] OR -field:[* TO *]) something可以是更复杂的查询。实

作为Lucene的新手,我希望找到某个字段在给定范围内或完全不存在的文档。也就是说,我想结合这两个查询的结果:

q=something AND field:[lower TO upper]
q=something AND -field:[* TO *]
任何一个查询都会给出所需的结果,但当我尝试将这两个查询组合在一起时,却一无所获:

q=something AND (field:[lower TO upper] OR -field:[* TO *])

something
可以是更复杂的查询。实际上,我的查询将是来自Java程序中的Solr查询,以防它产生影响。如何做到这一点?

这也应该起作用:

q=( (+something -field:[* TO *]) OR (+something +field:[lower TO upper]) )

检查-非常感谢。这确实有效。所以答案是
q=something AND NOT(-field:[从下到上]和field:[*到*])
。现在我想知道这样的查询有多贵?