php - Mysql根据相对距离查询GPS经纬度列的方法

标签 php mysql database gps latitude-longitude

在我正在构建的应用程序中,我希望用户能够轻松发现周围的人的功能之一。我正在使用 GPS 获取纬度和经度,然后将该信息与纬度列和经度列下的其他用户信息一起存储在 mysql 数据库中。最好的做法是做一个查询来查看查询信息的人......然后让它找到最接近的相关纬度和经度然后从那里开始并将其限制为 24 个结果?此外,我如何记住它停止的位置,以便我可以允许另一个查询从它停止的地方开始并返回更多,越来越远

基本上,概括地说,我如何做一个 mysql 查询,它开始时尽可能接近我提供的 2 个纬度和经度点,然后让它获取接下来的 24 个按最近到最远排序?

我觉得这很难做到,因为它基于 2 列。有没有一种方法我应该/可以将 GPS 值组合到 1 列中,以便很容易找到相对距离?

也许我可以通过某种方式获得邮政编码(但这可能会导致非美国问题)。我不确定。我卡住了。

最佳答案

只需在 Stackoverflow 上搜索“Haversine Formula”,您就会发现几个相关问题。

关于php - Mysql根据相对距离查询GPS经纬度列的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6310191/

相关文章:

php - 在 PHP 函数签名中模拟 Ruby "splat"运算符的最佳方法 [方法重载]

PHP存储过程(Mysql)在PHP程序调用时不起作用

mysql - Laravel 查询在日期时间列上使用 yyyy-mm--dd 值

c# - 我该如何解决这个问题?不支持关键字 'datasource'

javascript - 我怎样才能在我的页面中获得所有出行模式(如驾驶、公交、骑自行车、步行)的距离和持续时间,并将其存储在数据库中

php - Zend Framework 的所有文件放在哪里?

php - cakephp 模型中的电子邮件验证

php - SQL计数数据和数组数据如何一起发送?

c# - 如何仅使用 LocalDB 2016 发布我的 C# winform 程序?

android - 记事本教程 : deleteDatabase() function