Nic*_*kiy 3 algorithm search geocoding
我有一个地址数据库,所有地理编码.
在给定lat,lng的某个半径范围内查找数据库中所有地址的最佳方法是什么?
换句话说,用户输入(lat,lng)某个位置,我们返回来自我们数据库的所有记录,这些记录位于给定位置的10,20,50 ......等英里范围内.
它不一定非常精确.
我使用MySQL DB作为后端.
小智 5
MySQL 5有可用的Spatial扩展 - 文档的入口页面在这里:
http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html
根据空间数据在数据库中的表示方式,有很多关于如何完成所要求的细节.
另一种选择是使用已经提到的Haversine公式来计算距离.它背后的数学可以在这里找到:
www.movable-type.co.uk/scripts/latlong.html
希望这会有所帮助.