0

私のインデックスには、タイトルとコンテンツの 2 つのテキスト フィールドと、1 つの属性 date_publish があります。

で注文したい

タイトルの関連性、出版年代、内容の関連性

Sphinx 2.0.2 およびSphinxSE を使用

どのようにそれを行うことができますか?検索モード -> expr ? ランクモード -> expr ?

道に迷いました..

実は私の考えは

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

(注意してください、これらすべてはまだ漠然としています。あなたのコメントと私の経験の結果で質問を絞り込みます;-)

4

1 に答える 1

0

フィールドごとに「関連性」係数を取得できるとは思わないので、そのように明示的にソートすることはできません。

ただし、フィールドの重みを使用して「フィールドごと」の重みを変更できるため、タイトルがコンテンツよりも大きな影響を与える可能性があります。

次に、ランキング式を使用して、例のようにドキュメントの「年齢」を考慮することができます。

または、拡張ソートモードを使用して、関連性で明示的にソートしてから日付でソートすることもできます。

敬虔な順に並べ替えながら、最近のコンテンツを一番上に表示するもう 1 つの方法は、「タイム セグメント」並べ替えを使用することです。SPH_SORT_TIME_SEGMENTS を参照

于 2013-08-23T13:24:20.897 に答える