solr 搜索字段不存在的文档

Posted

技术标签:

【中文标题】solr 搜索字段不存在的文档【英文标题】:solr search for documents where a field doesn't exist 【发布时间】:2011-05-20 21:43:10 【问题描述】:

如何在 SOLR 索引中搜索不包含指定字段的文档?

【问题讨论】:

【参考方案1】:

-field:[* TO *]

在 SolrNet 中,使用否定的SolrHasValueQuery

【讨论】:

那太贵了。必须有更好的方法,但我还没有看过。至少,您应该创建一个空字段标记(例如 NULL)并为其编制索引。 @KyleMaxwell 当然,在索引时执行它会更好......如果不是,我认为在查询时没有更好的方法。 请注意,这只适用于被索引的字段。对非索引字段执行此操作将返回所有记录。 我已经在一个相当大的索引上直接测试了这个请求,它并不昂贵(使用 solr 4.10 和一个 docvalues 字段) 我们也可以使用-field:*

以上是关于solr 搜索字段不存在的文档的主要内容,如果未能解决你的问题,请参考以下文章

Solr新特性4.x,5.x,6.x

《艳遇SOLR》9--solr查询--逻辑运算查询

如何过滤掉弹性搜索中不存在的字段?

solr

SOLR 不搜索某些字段

Solr搜索父元素,嵌套查询,块连接的嵌套所有子元素。