【发布时间】:2018-12-04 12:15:40
【问题描述】:
我在 Solr 中索引了以下字段:
- FIELD_1
- FIELD_2
- FIELD_3
我想搜索 FIELD_3=X 但如果 FIELD_3 为空(或文档中不存在)的文档,在 FIELD_2 中搜索,然后在 FIELD_1 中搜索
在 Solr 中可以进行这种查询吗?
谢谢
【问题讨论】:
标签: solr lucene solr4 solr-query-syntax
我在 Solr 中索引了以下字段:
我想搜索 FIELD_3=X 但如果 FIELD_3 为空(或文档中不存在)的文档,在 FIELD_2 中搜索,然后在 FIELD_1 中搜索
在 Solr 中可以进行这种查询吗?
谢谢
【问题讨论】:
标签: solr lucene solr4 solr-query-syntax
假设您只想在前面的字段为 empty 时搜索 FIELD2 和 FIELD1(而不是如果它们有值,但它没有产生命中),类似于:
q=FIELD3:foo OR (FIELD2:foo AND NOT FIELD3:[* TO *]) OR (FIELD1:foo AND NOT FIELD2:[* TO *] AND NOT FIELD3:[* TO *])
应该可以。
【讨论】: