生成两个极限之间的随机数

问题描述 投票:1回答:1

我们需要在字段中添加随机数并对其进行排序。

例如;我们的排名在每个文档中都是整数。我们需要在1-10之间添加一些随机数以对每个文档中的字段进行排名,最后将其升序排序。

这样,每次调用solr响应时,我们都可以重新排列产品。

solr solrcloud solr6
1个回答
0
投票

实现此目标的可能性之一是拥有RandomSortField,可以将其用作排序的第二个字段。

schema.xml:

<fieldType name="random" class="solr.RandomSortField" />
<dynamicField name="random*" type="random" indexed="true" stored="false"/>

然后,您需要在查询时间内进行如下排序:

sort=rank DESC,random_1 DESC

因此,您将能够实现所需的,唯一的警告是RandomSortField的值不是从1到10,而是真正的随机。

© www.soinside.com 2019 - 2024. All rights reserved.