我想知道是否可以在我的响应中返回一个SolrDocument,首先指定一个查询,该查询返回例如100种最昂贵的产品,然后随机只向我的应用程序返回1种产品。
发布于 2014-11-20 19:42:25
我认为solr不会为你的需求返回一个查询,你想要100个最昂贵的(这本身是基于标准的),然后是随机产品的最后一个记录。
据我所知,你必须使用2个查询才能得到结果。在此之前,您必须在solr.xml中包含一个随机字段排序,如下所示:
在solr.xml中使用RandomSortField。在solr downloads的example目录(在solr文件夹下)的捆绑的schema.xml中有一个示例:
<fieldType name="random" class="solr.RandomSortField" indexed="true" />
<dynamicField name="random_*" type="random" />这将根据字段random_对结果列表进行排序,其中您将替换为随机生成的值(但如果您正在对结果进行分页,则使用相同的值,因为它将根据字段名称提供稳定的排序)。
如上图所示,在solr.xml中修改这些,并触发2个查询,合并结果并返回。
希望这能有所帮助。
谢谢
Shiva Kumar SS
https://stackoverflow.com/questions/27002754
复制相似问题