如何在solr中实现Time/(Distance)^2?
How to implement Time/(Distance)^2 in solr?
我想在 solr 中实现 Time/Distance^2
。例如:
用户所在地是:BTM
问题 1: 5 小时前发布。与我所在地区的距离为 2 公里:5/4=1.25
问题 2 2 小时前发布。与我所在地区的距离为 4 公里:2/16=0.125
问题 3 4 小时前发布。与我所在地区的距离为 3 公里:4/9:0.44
现在,当我触发 solr 查询时,结果应根据 T/D^2
公式按以下顺序出现:
question1 then question3 and question1
您可以使用函数查询。参见 FunctionQuery
您可以按功能排序。
使用函数 div 和 pow.
sort=div(Time/pow(Distance,2)) asc
或
sort=div(Time/pow(Distance,2)) desc
您可以将函数添加到字段列表来调试函数:
fl=*,div(Time,pow(Distance,2))
我想在 solr 中实现 Time/Distance^2
。例如:
用户所在地是:BTM
问题 1: 5 小时前发布。与我所在地区的距离为 2 公里:5/4=1.25
问题 2 2 小时前发布。与我所在地区的距离为 4 公里:2/16=0.125
问题 3 4 小时前发布。与我所在地区的距离为 3 公里:4/9:0.44
现在,当我触发 solr 查询时,结果应根据 T/D^2
公式按以下顺序出现:
question1 then question3 and question1
您可以使用函数查询。参见 FunctionQuery
您可以按功能排序。 使用函数 div 和 pow.
sort=div(Time/pow(Distance,2)) asc
或
sort=div(Time/pow(Distance,2)) desc
您可以将函数添加到字段列表来调试函数:
fl=*,div(Time,pow(Distance,2))