美好的一天,
如果我有例如具有以下字段的文件
Person_name - Birthday
Jordan - 2009-06-15
Marc - 2009-01-01
Marcos - 2009-01-01
Marcissh_something_something - 2009-06-15
Marcos - 2009-12-31
在搜索Person_name时:Marc *我得到了以下分数(这里的分数是假设的)
Person_name - Birthday - Score
Jordan - 2009-06-15 - 0.0
Marc - 2009-01-01 - 1.0
Marcos - 2009-01-01 - 0.8
Marcissh_something_something - 2009-06-15 - 0.1
Marcos - 2009-12-31 - 0.8
如何检索结果,使结果首先按相关性排序,然后假设相同的相关性(得分)按生日降序排序....结果是
Person_name - Birthday - Score
Marc - 2009-01-01 - 1.0
Marcos - 2009-12-31 - 0.8
Marcos - 2009-01-01 - 0.8
Marcissh_something_something - 2009-06-15 - 0.1
由于
答案 0 :(得分:1)
尝试检查搜索结果,然后自己对那些得分相等的人进行排序。您可以使用比较器来比较分数,然后比较搜索结果的自然字段。
答案 1 :(得分:1)
我打算推荐一个ScoreDocComparator,但我现在看到它已弃用了。您可以使用FieldComparator。您需要创建TopFieldCollector并根据您的意愿定义其Sort。我相信这是相当新的,因为我找不到一个好的例子。