Solr按结果排序


Solr sorting by result

我已经为一个表编制了索引,它给我的结果如下

A
B
C
D
E
F
H
H
A
B

我想以这样一种方式对结果进行排序,每次我都会先得到H,然后剩下的应该像一样通过asc排序

H
H
A
A
B
B
C
D
so on...

我找不到办法。请帮忙。

这取决于您用于获取结果的搜索查询。您可以修改查询参数,使其与您希望位于顶部的确切结果相匹配,并在q.alt参数中传递原始查询,然后应用您希望使用的排序。

请注意,为了使用q.alt,您需要使用dismax或edismax查询解析器。

$alpha = array("A","B","C","D","E","F","H","H","A","B");
$first = array("H");
$alpha =array_diff($alpha, $first);
asort($alpha);
$alpha= $first + $alpha;

演示