【问题标题】:How to implement constant scoring in Solr.Net?如何在 Solr.Net 中实现恒定评分?
【发布时间】:2019-10-04 15:12:14
【问题描述】:

我有一个 SOLR 查询,我想为其分配一个恒定分数。 如何使用 SOLR.Net 做到这一点?

查询示例:

(x_type_s:("Person") AND _query_:("{!type=parent which=x_type_s:Person}((path_s:Facets.Emails AND email_s:testaccount@sgmail.com)^=1)"))

我知道 SOLR.Net 允许 Local params 设置父查询,但我没有发现可以实现恒定评分。

【问题讨论】:

  • 使用过滤查询——它们永远不会影响分数。

标签: c# solr solrnet


【解决方案1】:

使用 ^= 获得恒定分数

Solr 中有一个恒定分数查询的概念,它只会查找匹配项,不会影响文档分数。在您的查询中,您已经使用了常量分数子句,但用于嵌套查询。如果将整个查询包含在常量查询子句中怎么样。

(x_type_s:("Person") AND _query_:("{!type=parent which=x_type_s:Person}((path_s:Facets.Emails AND email_s:testaccount@sgmail.com)^=1)"))^=1

来自 solr 文档

恒定分数查询是使用 ^= 创建的,它 将整个子句设置为任何文档的指定分数 匹配该条款。当您只关心时,这是可取的 匹配特定子句并且不想要其他相关因素 例如词频(词出现在 字段)或逆文档频率(整个索引的度量 一个术语在一个领域中的罕见程度)。

【讨论】:

  • 我正在寻找一种使用 Solr.Net 的方法。我知道如何编写 SOLR 查询,但是如何在 SOLR.Net 中执行它是我所关心的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-20
  • 1970-01-01
  • 2016-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多