【问题标题】:Search multiple fields using Surround Query Parser?使用环绕查询解析器搜索多个字段?
【发布时间】:2017-07-09 21:13:57
【问题描述】:

我在 solr 字段内容中有以下环绕查询搜索。

 _query_:"{!surround maxBasicQueries=10000} content:5N(tru*,(equi* OR and*))

如何提交包含多个字段的 ORed 或 ANDed 查询。 使用 Surround QueryParser 可以实现这样的事情吗?我可以同时搜索两个字段。

查询:"{!surround maxBasicQueries=10000} AND (content:5N(tru*,(equi* OR and*)),examples:10N(em*,rit*))

【问题讨论】:

  • 你这是什么意思? 5N(content:tru*,(content:equi* OR otherfield:and*)) 之类的东西没有任何意义(如果是在完全不同的领域,则不能在五个字之内),那么您在寻找什么?
  • @femtoRgon 用一个详细的例子更新了问题,基本上我需要在一个环绕查询中搜索多个字段

标签: search solr lucene solrcloud surround


【解决方案1】:

您可以只发出两个环绕查询,每个字段一个。然后,您可以随意组合它们。请记住,您可以split parts of queries into separate variables 让它们更易于管理。

此外,您似乎正在使用通配符进行前缀查询。您可能想在索引阶段考虑使用EdgeNGrams filter。它使您的索引变大,但搜索速度更快。

【讨论】:

    猜你喜欢
    • 2012-06-10
    • 1970-01-01
    • 2011-08-17
    • 1970-01-01
    • 2022-01-09
    • 2021-04-04
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多