在solr中对文档内的字段进行排序

时间:2016-10-25 13:39:46

标签: solr lucene

我正在处理一个我没有做过的solr索引。我只能访问solr admin。

在我在solr admin中编写的查询返回的每个文档中,有大约40个字段。这些字段不按字母顺序排序。 现在我的问题是我可以在solr管理员中以某种方式对它们进行排序吗? 如果我不能,我有机会在我的开发机器中本地导入该索引。我也可以访问配置(solr配置,数据导入配置等)文件。

是否可以在任何配置文件中进行一些魔术并在本地导入,这将按字母顺序排序?

2 个答案:

答案 0 :(得分:1)

不,Lucene或Solr都不保证返回字段的顺序(但是保证多值字段中的顺序)

您可能有运气(您不会 - 请参阅下面的评论 - fl保持与文档中相同的顺序),方法是明确使用fl参数来获取您想要的订单,但这需要维护一长串要返回的字段。

通常最好问一下为什么你需要维护字段的顺序。从Solr返回的数据通常不是直接面向用户的,应该在控制器/视图层中处理以适应用例。

答案 1 :(得分:0)

您可以使用XSLT response writer而不是XML来返回它。通常它用于将XML转换为不同的形式,但您可以使用它进行身份转换,但需要使用排序。

我不认为这是最好的前进方式,但如果你绝望,那就是一种方式