0

在我的索引中,我有 2 个文本字段:标题和内容,以及一个属性 date_publish。

我要订购

标题相关性、出版年龄、内容相关性

使用 Sphinx 2.0.2 和SphinxSE

怎么办?搜索模式 -> expr ? rank_mode -> expr ?

我迷路了..

其实我的想法是

bm25(@title)*1000+(1000/ (now()-date_publish)/86400) + bm25(@content)/10

(请注意,所有这一切仍处于不确定状态,我会根据您的评论和我的经验结果来完善我的问题;-)

4

1 回答 1

0

我不认为你可以像这样获得每个字段的“相关性”因素,所以不能明确地这样排序。

但是可以使用字段权重来改变“每个字段”的权重,这样标题就可以比内容产生更大的影响。

然后,您可以使用排名表达式来考虑文档的“年龄”,类似于您的示例。

或者可以直接按相关性显式排序,然后按日期排序 - 使用扩展排序模式。

另一种按尊敬排序但仍将最近的内容提升到顶部的方法是使用“时间段”排序。见 SPH_SORT_TIME_SEGMENTS

于 2013-08-23T13:24:20.897 回答