我有一个lat lat long和一个结束lat long,我必须使用solr spatialSearch搜索这些点之间的其他记录。如果有人能帮助我,请提前致谢。
最佳记录......
Aisha Zafar
答案 0 :(得分:2)
您可以使用Solr's Bounding-box过滤器查找框之间的记录,但它可以使用单点(lat,lon)和距离。
如果您有两个点,则可以使用范围查询在此框之间找到记录。查询可能类似于:
..& fq = latField:[lat1 to lat2] AND lonField:[lon1 to lon2]
答案 1 :(得分:0)
这是solr查询: 只需将pt更改为搜索坐标,将距离d更改为圆的半径。 fq = {!geofilt sfield = coordinates}& pt = 10.737845823323038,106.65631819042972& d = 2.8'
使用此schema.xml配置从solr索引的每个文档:
< field name =“coordinates”type =“geohash”indexed =“true”stored =“true”multiValued =“true”/>
和文档对象应包含如下字段: $ fields ['coordinates'] = implode(',',$ post-> getCoordinates() - > getLatLng());