如何在狮身人面像中动态设定体重/分数

时间:2017-12-17 06:01:40

标签: php mysql sphinx

我正在为查询提取匹配结果。例如,我在学生表(Point&)c中有一个可搜索的列,所以如果我输入“Mack”作为查询,那么它将使用“Mack”检索所有匹配的记录名称。像“Mack Paul”,“Mack Rhodes”,“Mack”等等。

但是,我希望得到最好的比赛,首先是“Mack”,然后保持像“Mack Paul”,“Mack Rhodes”等等。

我是狮身人面像的新手,不知道如何根据完全匹配优先设置结果集,然后再休息。

  

有没有办法根据优先级或得分到列获得结果   值?

1 个答案:

答案 0 :(得分:0)

理论上SPH_RANK_SPH04 http://sphinxsearch.com/docs/current.html#builtin-rankers

  

当它们出现在文本字段的最开头或最后时,还会增加匹配。因此,如果字段等于完全查询,则SPH04应将其排名高于包含完全查询但不等于它的字段。

如果想法使用字段长度来影响权重,请参阅http://sphinxsearch.com/docs/current.html#conf-index-field-lengths

或者可以尝试重写qyery

$cl->Query("Mack | ^Mack$");

...理论应该将精确匹配排名更高,因为它匹配两个术语。虽然您可能还必须与RANKER一起玩,以便以有意义的方式实际更改排名。