1

sphinx のインデックスに price 属性と sale_price 属性を追加したところ、 を使用してうまくソートされているように見えましたが$s->SetSortMode(SPH_SORT_EXTENDED,'price desc');、数ページ後に価格が再び跳ね上がりました。

たとえば、1 ページ目には 1,000 ドルから 800 ドルの価格が表示され、2 ページ目には 800 ドルから 500 ドルの価格が表示され、3 ページには 500 ドルから 200 ドルの価格が表示され、4 ページ目には 300 ドルから 100 ドルまたはランダムな価格の組み合わせが表示されました。

明示的に指示していませんが、スフィンクスがまだ重量イベントでソートされている可能性があるかどうか疑問に思っています...それは問題のように聞こえますか?

他のアイデアも喜んで受け入れます。また、私は間違いなくすべてのインデックスを再インデックスして回転させましたが、スフィンクスはエラーを返しません。

よろしくお願いします。

ここに私が現在使用しているすべてのオプションがあります: (@barryhunter の更新)

$s->SetMatchMode(SPH_MATCH_BOOLEAN);
$s->SetSortMode(SPH_SORT_EXTENDED,'price desc');
$s->SetFilter("is_private", array(0));
$s->SetFilter("is_deleted", array(0));
$s->SetFilter("site_type", array(1));
$s->SetLimits($start, $count);
4

2 に答える 2