使用来自大型数据集的纬度和经度的最近的基于php的搜索

时间:2015-10-23 12:51:28

标签: php mysql algorithm

我们有大型数据库,可以使用纬度,经度和半径进行搜索。搜索整个数据库需要很长时间。我们想搜索不是整个数据库只搜索范围的特定区域。我们想使用纬度和经度在表格中插入区域。请提出快速最近搜索技术的想法。

如何使用纬度,经度和半径查找公共区域?

我们需要使用纬度,经度和半径来查找公共区域,仅搜索该区域而不是整个数据库搜索。

1 个答案:

答案 0 :(得分:0)

了解一下三角学和MySql的基础知识,我建议你尝试这个解决方案

SELECT * FROM Places WHERE acos(sin([givenlatitude]) * sin(Lat) + cos([givenlatitude]) * cos(Lat) * cos(Lon - ([givenlongitude]))) * 6371 <= [givenDistance];

6371是地球半径。