Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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_Search Engine_Solrj - Fatal编程技术网

Solr 如何对包含属于多个位置的产品的文档进行排序?

Solr 如何对包含属于多个位置的产品的文档进行排序?,solr,search-engine,solrj,Solr,Search Engine,Solrj,假设我的索引包含产品,每个产品都存在于多个商店中。如何根据用户与属于该产品的所有商店之间的最小距离对产品进行分类。我有用户的经度和纬度,也有商店的经度和纬度 我用的是Solr4。我尝试创建一个多值location()字段,其中包含属于每个存储的各个存储的位置,但它给出的结果是错误的 {编辑} 我曾尝试使用solr.LatLonType类创建一个多值位置字段,如包含属于特定产品的所有商店的位置值中所述,但当您尝试使用geodist()函数对该字段进行排序时,它会给出错误的结果(您可以通过查看geo

假设我的索引包含产品,每个产品都存在于多个商店中。如何根据用户与属于该产品的所有商店之间的最小距离对产品进行分类。我有用户的经度和纬度,也有商店的经度和纬度

我用的是Solr4。我尝试创建一个多值location()字段,其中包含属于每个存储的各个存储的位置,但它给出的结果是错误的

{编辑}


我曾尝试使用solr.LatLonType类创建一个多值位置字段,如包含属于特定产品的所有商店的位置值中所述,但当您尝试使用geodist()函数对该字段进行排序时,它会给出错误的结果(您可以通过查看geodist()的值进行检查)函数,您可以在fl参数中再次请求该函数。我相信属于LatLong类的字段不能按所述进行多值化,但有人能给我一些其他实现方法吗。

您所有的链接都指向旧实现的文档。对于Solr 4,有


此外,如果您可以升级,Solr 4.1还添加了一些(Solr-4230)。Geo在Lucene和Solr中的主题发展非常迅速,仔细检查您是否使用了最新的功能是有意义的。

到目前为止您有什么收获?。。。