Solr查询字段回退

时间:2018-12-04 12:15:40

标签: solr lucene solr4 solr-query-syntax

我在Solr中索引了以下字段:

  • FIELD_1
  • FIELD_2
  • FIELD_3

我想搜索FIELD_3 = X的文档,但是如果FIELD_3为空(或文档中不存在),请在FIELD_2中搜索,然后在FIELD_1中搜索

在Solr中可以进行这种查询吗?

谢谢

1 个答案:

答案 0 :(得分:0)

假设您只想在先前的字段为空的情况下对FIELD2和FIELD1进行搜索(如果它们具有值,则没有,但是没有产生匹配),例如:< / p>

q=FIELD3:foo OR (FIELD2:foo AND NOT FIELD3:[* TO *]) OR (FIELD1:foo AND NOT FIELD2:[* TO *] AND NOT FIELD3:[* TO *])

应该工作。