2011-01-31 1 views
1

スフィンクス0.99を使用して結果を注文しようとしていますが、動作しません。スフィンクスSPH_MATCH_ANYを使用するとSetFieldWeightsとSetSortModeが無視される

イムは、現在、すべての結果を引き上げるこの

$cl->SetMatchMode (SPH_MATCH_ANY); 
$cl->SetRankingMode (SPH_RANK_PROXIMITY_BM25); 
$cl->SetFieldWeights (array ("item_title"=>100,"item_publish_date"=>99)); 
$cl->SetSortMode (SPH_SORT_EXTENDED , "@weight DESC,item_publish_date DESC"); 
$cl->SetLimits(0, 330); 

を使用して、それが完全にitem_publish_date値を無視します。

もし私がSPH_MATCH_ANYのSPH_MATCH_BOOLEAN isnteadを使用していたら、私が望む順番で結果を表示しますが、同様の項目は完全に無視されるので、結果をあまりにも制限します。なぜSPH_MATCH_ANYを使用する必要があるのですか?ほとんどの結果。

私の質問は、どのようにSPH_MATCH_ANYを使用してitem_publish_dateを考慮に入れることができますか?

答えて

0

私はitem_publish_dateはテキストフィールドではないので、意味がないのでSetFieldWeightsメソッドで使用する必要はありません。第2に、ランクは、マッチだけでなく、一致する単語の追加カウントを使用して重みを計算する。それで、いくつかのテストを行い、異なる検索でweightパラメータを監視する必要があるのはなぜですか。

ここには何かがあります。weighting in Sphinx

関連する問題