solr 可以返回函数值(不是 solr 分数或文档字段)吗?
Posted
技术标签:
【中文标题】solr 可以返回函数值(不是 solr 分数或文档字段)吗?【英文标题】:Can solr return function values (not solr score or document fields)? 【发布时间】:2012-04-06 22:13:11 【问题描述】:我们正在进行一个 solr 查询,其中我们提供了一个自定义函数(这非常复杂)并按该函数的值对结果进行排序。查询类似于:
solr/select?customFunc=complexFunction(querySpecificValue1,querySpecificValue2)&sort_by=$customFunc&fq=......
我们的理解是,我们只能从 solr 中取回文档上的字段和 solr score。有人可以告诉我们是否以及如何获取每个文档的 customFunc 的计算值。由于某些原因,我们无法将 solr score 设置为 customFunc。
【问题讨论】:
【参考方案1】:这对我有帮助:
/solr/auction-En/select/?q=*:*_val_:"sum(x,y)"&debugQuery=true&version=2.2&start=0&rows=10&indent=on&fl=*,score
你会在调试部分看到函数的值。
【讨论】:
【参考方案2】:您应该使用fl
参数来选择伪字段、函数等,但这仅在trunk 上支持,它将与Solr 4.0 版本一起发布。看看CommonQueryParameters wiki。 SOLR-2444 问题也可能很有趣。
一个简单的例子:
solr/select?q=*:*&fl=*,customFunc:complexFunction(querySpecificValue1,querySpecificValue2)
【讨论】:
以上是关于solr 可以返回函数值(不是 solr 分数或文档字段)吗?的主要内容,如果未能解决你的问题,请参考以下文章