0

ここで、Sphinx が検索を行いました。Sphinx は、タイトルとデータの 2 つのフィールドにインデックスを付けました。ユーザーが値を入力すると、関連性で並べ替えられたすべての結果を表示したい (私は思う)

例: 行 1 にはtitle:foodata='foo bar' があります 行 2 にはtitle='foo bar' とdata='foo bar' があります。ユーザーが foo を入力した場合、タイトル フィールドは 100% 一致するため、行 1 を最初に表示します。

$sphinx = new SphinxClient;
$sphinx->SetServer(SPHINX_HOST,SPHINX_PORT);
$sphinx->SetLimits(0,2,1000);
$sphinx->SetMatchMode(SPH_MATCH_EXTENDED2);
$sphinx->SetFieldWeights([
    'title' => 100,
    'data' => 1,
]);
$sphinx->SetSortMode(SPH_SORT_RELEVANCE);
$data = $sphinx->Query('(@title_original '.$full_phrase.' | @data '.$full_phrase.') & @data cover1','index');
4

1 に答える 1

0

理論的には、これSPH_RANK_SPH04が目的です。一緒に使うsetRankingMode

http://sphinxsearch.com/docs/current.html#weighting

于 2013-11-06T11:45:37.090 に答える