通过SOLR查询特定数组列表

时间:2018-11-23 17:00:26

标签: java solr geolocation latitude-longitude

我的SOLR文档中有一个数组,我想访问该数组的确切索引。 更详细地讲,我要遍历经度和纬度数组,计算所有这些元素的最小距离,并以此对文档进行排序。

{
    "title": "iphone",
    "latitudes": [48.5, 48.0, 49.1, ...],
    "longitudes": [16.1, 16.3, 17.3, ...]
}

为此,我要计算以下内容:

dist1=dist(latitudes[0],longitudes[0], 48.32, 16.43)
dist2=dist(latitudes[1],longitudes[1], 48.32, 16.43)
...
minDist=min(dist1, dist2, ... distN)

我希望语法像下面这样,但是不起作用:

&fl=min(dist.latitudes, dist.longitudes, 48.32, 16.43)&sort=min(dist.latitudes, dist.longitudes, 48.32, 16.43)

作为输出,我想以此minDist对其进行排序,并将其添加到具有以下结果的文档中:

{
    "title": "iphone",
    "latitudes": [48.5, 48.0, 49.1, ...],
    "longitudes": [16.1, 16.3, 17.3, ...],
    "minDist": 456.12
}

纬度和经度的数量是动态的。

有人对如何解决这个问题有想法吗?我几周前开始SOLR,但找不到解决方案。

提前谢谢!

0 个答案:

没有答案