【问题标题】:Display result from original search term before the result of its synonyms在其同义词结果之前显示原始搜索词的结果
【发布时间】:2019-04-29 12:49:37
【问题描述】:

我在 solr 的同义词实现过程中卡住了。 Normal Multi-Term 工作正常,但我们的客户要求 Searched Term 的结果应该出现在顶部,然后其同义词的结果应该出现。我还没有遇到任何方式,所以我在这里发布。任何帮助将是非常可观的。此外,提升应用于搜索字段,并在查询中使用“AND”“OR”等运算符。以下是带有查询的示例: 已配置的同义词:“集成广告系列、广告系列框架”

搜索词 1:“综合广告系列” 搜索结果 1:具有集成活动的记录显示在第一位,而具有活动框架的记录显示在第二位。

搜索词 2:“活动框架” 搜索结果 2:这里再次出现集成活动的记录,而具有活动框架的记录显示第二。

预期结果: 搜索结果 1:具有集成活动的记录显示在第一位,而具有活动框架的记录显示在第二位。

搜索结果 2:具有活动框架的记录出现在第一位,而具有集成活动的记录出现在第二位。

我还尝试过 Nolan 的插件,用于在多词同义词中进行短语查询 https://github.com/healthonnet/hon-lucene-synonyms

以下是我的 solr 查询:

q=has_presentation_b:(True)+AND+(-exclude_from_search_b:(True))+AND+(title_t:(%22integrated+campaign%22))+OR+(promotional_keywords_t:(%22integrated+campaign%22))+OR+ (promotional_description_t:(%22integrated+campaign%22))+OR+(abstract_t:(%22integrated+campaign%22))+OR+(body_t:(%22integrated+campaign%22))

Solr 版本:6.3.0

谢谢, 拉利特·乔希

【问题讨论】:

    标签: solr


    【解决方案1】:

    添加具有相同处理链但没有同义词扩展的第二个字段。搜索时适当地提升该字段(通过使用field_name:query^<value> 或提供qf 中的字段),以便该字段中的任何匹配都比同义词扩展的字段中的匹配更有价值。

    【讨论】:

    • 非常感谢您每次的正确回复。 :)
    猜你喜欢
    • 2011-02-14
    • 1970-01-01
    • 2011-10-12
    • 1970-01-01
    • 1970-01-01
    • 2019-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多