Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
Sorting 如何排序Solr多值结果或存储没有多值的数据_Sorting_Search_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Solr_Solr6 - Fatal编程技术网 elasticsearch,solr,solr6,Sorting,Search,elasticsearch,Solr,Solr6" /> elasticsearch,solr,solr6,Sorting,Search,elasticsearch,Solr,Solr6" />

Sorting 如何排序Solr多值结果或存储没有多值的数据

Sorting 如何排序Solr多值结果或存储没有多值的数据,sorting,search,elasticsearch,solr,solr6,Sorting,Search,elasticsearch,Solr,Solr6,我想按sku对solr结果进行排序 这是我对结果排序的查询 http://localhost:8983/solr/test_core/select?sort=skucode+asc&q=*skucode*&wt=xml skucode标记将数据存储在数字字段中 <str name="id">39902395</str> <arr name="skucode"><long>5076501</long></arr&g

我想按sku对solr结果进行排序

这是我对结果排序的查询

http://localhost:8983/solr/test_core/select?sort=skucode+asc&q=*skucode*&wt=xml
skucode标记将数据存储在数字字段中

<str name="id">39902395</str>
<arr name="skucode"><long>5076501</long></arr>
39902395
5076501
我使用xml文件将数据存储在solr中

它给出的错误是,
无法对多值字段进行排序:skucode

或存储不带多值的数据


请让我知道如何在没有多值的情况下存储数据,或者如何从后端更改

只有在执行排序的字段是单值字段而不是多值字段时,查询才会起作用。可以使用函数查询对多值字段进行排序

http://localhost:8983/solr/test_core/select?sort=field(skucode,max)+ASC&q=*skucode*&wt=xml
有关函数查询的更多信息:

您正在使用的查询也可以使用的第二种方法是,您可以更改skucode的数据类型并使其成为单个值。要使其成为单值,请在schema.xml中将skucode的数据类型从long更改为long

<field name="skucode" type="long"/>


注意:-更改其数据类型后,需要重新编制索引以反映您的更改

schema.xml的位置在哪里file@RahulDambare如果您在云模式下运行Solr,那么配置文件将在zookeeper中。但如果您运行的是单核,那么它将位于Solr home/server/Solr/test_core/conf/managed-schema.xml中