我有一个数据库满地点(可以说超过50)与他们的地址。并且从APP向我发送他们的位置,并且我必须按照他们发送给我的位置更近的位置顺序返回。我是否每次都必须进行Google Maps API通话,并且需要知道吗?或者有另一种方式,更好的表现。 谢谢我该怎么做,以距离顺序返回地方
0
A
回答
-2
我假设你的数据库是MySQL,并且你有存储位置的经度和纬度。
您可以使用SQL查询执行地理空间搜索。例如这一个
set @orig_lat=122.4058;
set @orig_lon=37.7907;
SELECT *, 3956 * 2 * ASIN(SQRT(POWER(SIN((@orig_lat - abs(dest.lat)) * pi()/180/2),2) + COS(@orig_lat * pi()/180) * COS(abs(dest.lat) * pi()/180) * POWER(SIN((@orig_lon – dest.lon) * pi()/180/2), 2))) as distance
FROM Places dest
ORDER BY distance;
这假设你有经度和纬度列,并将从数据库中获取地点,并按距离排序。
看看这个演示文稿作为参考和d了解计算http://es.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL
+1
链接只有答案是不鼓励 – 2016-01-13 03:42:02
+0
感谢您的注意。我更新了回复并添加了该链接作为参考。 –
相关问题
- 1. 按距离排序,你觉得我应该怎么做?
- 2. 我该怎么做?
- 3. 我该怎么做?
- 4. MySQL,Node.js顺序操作 - 我该怎么做?
- 5. 我该怎么做最好的方法
- 6. Komodo Macro可以做什么,如果可以,我该怎么做?
- 7. 我应该怎么做,当SetEvent返回false
- 8. 我该怎么做? nope
- 9. 我该怎么做MongoDB中
- 10. 我该怎么做WKWebView
- 11. 我该怎么做(游戏)?
- 12. 我应该怎么做?
- 13. 我该怎么做Asp.Net?
- 14. regexp freebie ...我该怎么做?
- 15. 反思?我该怎么做?
- 16. 我该怎么做PyQt4?
- 17. 我该怎么做,我应该
- 18. 当我在MongoDB中进行地理空间查询时,我该如何返回距离期望点的距离?
- 19. 交叉验证返回1.0以上的分数我应该怎么做?
- 20. 使用Google地图距离矩阵返回距离功能
- 21. Solr - 如何按地理空间距离排序并返回距离?
- 22. 什么是DbGeography返回距离单位?
- 23. 这是什么叫,我该怎么做?
- 24. 我想运行“HttpAsyncTask”...我该怎么做?
- 25. 我可以从ajax返回,JavaScript应该做什么?
- 26. 可以返回一个本地初始化数组,如果没有,我该怎么做?
- 27. OSRM-backend返回距离:0
- 28. MongoDB:geoNear没有返回距离
- 29. TouchSwipe返回距离X
- 30. 距离他们的距离顺序最近的10个目的地
如果储存在那里纬度\经度,你可以对它们进行排序 – 2016-01-13 03:33:07
商店纬度和经度为你的位置和[使用空间索引来查找最近的一个](http://dba.stackexchange.com/questions/4214/how-to-best-implement-nearest-neighbour-search-in-mysql)。 – kozlice