Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SolR中按特定顺序排序_Solr - Fatal编程技术网

在SolR中按特定顺序排序

在SolR中按特定顺序排序,solr,Solr,我想按“格式”对我的数据进行排序,顺序是40024009,最后是999 所以这种排序不起作用:“sort=desc size” 你知道我该怎么做吗 问候,, Laurent如果这是仅有的三个值,则可以通过函数查询进行排序 或者,您可以滥用q函数为每个命中赋予不同的权重,然后将实际查询改为fq(因为过滤器查询不得分)。即q=格式:4002^10格式:4009^5格式:999^1 如果要在函数查询中执行此操作,应能够使用If和termfreq函数的组合为每个术语提供排序值: sort=if(term

我想按“格式”对我的数据进行排序,顺序是40024009,最后是999

所以这种排序不起作用:“sort=desc size”

你知道我该怎么做吗

问候,,
Laurent

如果这是仅有的三个值,则可以通过函数查询进行排序

或者,您可以滥用
q
函数为每个命中赋予不同的权重,然后将实际查询改为
fq
(因为过滤器查询不得分)。即
q=格式:4002^10格式:4009^5格式:999^1

如果要在函数查询中执行此操作,应能够使用
If
termfreq
函数的组合为每个术语提供排序值:

sort=if(termfreq(format,'4002'),1,if(termfreq(format,'4009'),2,if(termfreq(format,'999'),3,4))) asc