百度地图中,怎么根据一个坐标点搜索数据库中附近多少距内的N个坐标点

WBOY
Freigeben: 2016-06-13 13:43:51
Original
1047 Leute haben es durchsucht

百度地图中,如何根据一个坐标点搜索数据库中附近多少距内的N个坐标点
环境:php+mysql

现有数据库中存放一些经纬度(100W以上)坐标点,

如果根据一个坐标点获取附近1公里内的所有符合信息?

数据库中 经度字段lng 纬度字段lat。。

使用的是百度地图。

在线等 谢谢。


------解决方案--------------------
排序坐标列
筛选欧几里得距离符合条件的记录
------解决方案--------------------
我认为这样:

既然有了中心点经纬度,那么可以根据维度,计算出符合N公里的经纬度大致范围。。这样搜出的结果是个2N*2N的正方形,

比如北纬34.5°,1公里就没必要找北纬35+或者34-的点,具体的可以先程序中换算

不过尚需过滤一部分,圆半径N之外的部分,

如果这样可以,只要lng lat联合索引,百万规模,非常快速

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage