排序Apache SOLR搜索结果-句子

uoifb46i  于 2022-11-05  发布在  Solr
关注(0)|答案(1)|浏览(186)

如何根据搜索的每个句子中的重复单词数对Apache SOLR搜索结果进行排序。
例如,我正在搜索单词THIS***,在 * 第一个 * JSON对象中,单词THIS出现了1次。在 * 第二个 * 4x和 * 第三个 * 2x中。
我希望搜索结果按以下顺序排序:第二个对象 第三个对象 第一个对象
(By句子中
THIS***的数量)
我可以只使用Apache SOLR实现这个结果吗?或者从Apache SOLR获得原始结果,然后在客户端使用JavaScript对其进行排序可能更好?
enter image description here

p8h8hvxi

p8h8hvxi1#

您可以使用Solr termfreq相关性函数:https://wiki.apache.org/solr/FunctionQuery#termfreq

termfreq(text,THIS)

您可以在Solr排序参数中使用此函数的结果:https://lucene.apache.org/solr/guide/6_6/function-queries.html#FunctionQueries-SortByFunction

http://localhost:8983/solr/collection_name/select?q=*:*&sort=termfreq(text, THIS) desc

相关问题