基本上会保证在相对前面,但内部用BM25计算的,如果有些文章包含的词次数更多可能会在前面吧。 最好给出例子和实际页面。
比如,我搜索 "高考语文" 实际得到的结果里, 很多只包含 "高考" 和 只包含"语文"的结果, 比"高考"和"语文"两个词都包含了的结果排得要靠前. 如何才能让 "高考"和"语文"两个词都包含了的结果 排在最前,接下来才是只包含一...
请问如何同时按relevance和某个字段同时排序?Xapian好像是支持的,Sphinx是支持这个的。比如我想按relevance和时间同时排序,让新发布的文章(产品)在保证相关度的前提下尽量往前面排序,如何做到?
[b]请问如何同时按relevance和某个字段同时排序?Xapian好像是支持的,Sphinx是支持这个的。比如我想按relevance和时间同时排序,让新发布的文章(产品)在保证相关度的前提下尽量往前面排序,如何做到?[[/size]/b][size=x-large]
不建议用排序。。这样按值排序在结果匹配数量多时必然慢。 全文检索的优势在于相关性算法,相关度排序看看是否正常。
...序方式 ----------- 默认情况,搜索结果根据内部算法计算相关度进行排序,采用著名的 `BM25` 算法,这在信息检索概率模型中表现 非常优秀,通常只要使用默认的算法即可。 通过 [XSSearch::setSort] 我们可以指定让搜索结果按照某...
...索匹配结果,但如果包含会参与计算结果权重,使结果的相关度更高。常用于针对某一类 数据提升搜索结果排序位置。 ~~~ [php] // 搜索包含 "杭州" 的结果,并且提升 subject 字段包含 "西湖" 的数据的排序 $docs = $search->setQuery('杭...
...词都不影响搜索匹配, 但会参与计算结果权重, 使结果的相关度更高 参见 addQueryTerm count() 方法 public int count(string $query=NULL) $query string 搜索语句, 若传入 null 使用默认语句, 调用后会还原默认排序方式 如果搜...