使用MySQL有效计算哪些点接近给定纬度/经度的最佳方法是什么?

And*_*w J 8 mysql geospatial computational-geometry

我正在尝试设计一个MySQL模式,可以存储具有相关纬度和经度的用户列表.

然后,对于给定的用户,我想建立一个查询,该查询可以将最近的50个用户返回给他/她并按距离对这些用户进行排序(最近的用户首先显示).

鉴于此表中可能有数千名用户,存储和查询此数据的最有效方法是什么?

Bil*_*win 5

尝试阅读本文:使用PHP,MySQL和Google Maps创建商店定位器本文展示了针对Haversine公式的MySQL解决方案,这是计算纬度和经度距离的最佳方法.


Abe*_*ler 4

看一下MySql的空间索引

您还可以使用大圆距离,这里有一篇很好的 SO 文章。