狮身人面像结果的顺序总是在上升

时间:2012-11-11 00:06:05

标签: php search sphinx

不知何故,无论查询是什么,Sphinx总是按升序返回结果(有序 由主要ID)。假设我在这5个文件中搜索“foo”:

  1. foo bar
  2. foo foo foo foo
  3. ja la la
  4. foo foo foo foo foo
  5. foo foo foo
  6. 这将返回匹配:1,2,4,5,其中1是最相关的。至少,这是 var_dump在PHP中显示了什么。但是,我希望真正的顺序是:4,2,5,1。我怎么样 应该解决这个问题?我正在使用以下设置:

    $sphinx->SetMatchMode(SPH_MATCH_ALL);
    $sphinx->SetRankingMode(SPH_RANK_PROXIMITY_BM25);
    $sphinx->SetSortMode(SPH_SORT_RELEVANCE);
    

    正在搜索以下来源:

    source pages
    {
          type = mysql
          sql_query = SELECT text_id, book_id, content, page_number FROM text
          sql_attr_uint = page_number
          sql_attr_uint = book_id
          sql_query_pre = SET SESSION group_concat_max_len = 4294967295
    }
    

1 个答案:

答案 0 :(得分:3)

尝试将SPH_MATCH_EXTENDED2匹配模式与SPH_RANK_WORDCOUNT一起使用