现在我有一个solr集合:问题
问题有一些领域:
id
answer_count
created_at
updated_at
现在我有了排序规则:
score = answer_count * 100 - (the hours now to created_at) * 5
然后我需要按照得分desc排序。
我怎么能这样做,因为分数是实时的?
答案 0 :(得分:1)
这方面的关键是函数查询。假设你使用EDisMaxQP,你可以用这个值指定一个boost函数(bf
):
sub(product(answer_count,100),product(div(ms(NOW,created_at),3600000),5))
然而,一个函数查询会影响得分,但它看起来好像你根本不需要任何得分而是一个固定的排序顺序,所以我想这是一个使用它的情况作为sort
的值:
sub(product(answer_count,100),product(div(ms(NOW,created_at),3600000),5)) desc
当然,提升新文件is in the FAQ,您可以自己找到这个。