在给定坐标的一定范围内查找项目

在给定坐标的一定范围内查找项目,第1张

在给定坐标的一定范围内查找项目

Haversine方程式是您的问题的答案。但是,解密有点困难,因此在这里我为您提供一个简单的解释:

简而言之:

这是示例/示例SQL语句,该语句将查找距37,-122坐标25英里范围内的最近20个位置。它根据该行的纬度/经度和目标纬度/经度(由下面的方程式中的lat
/
lng给出)计算距离,然后仅询问距离值小于25的行,对整个查询进行排序距离,并将其限制为20个结果。要按公里而不是英里进行搜索,请将3959替换为6371。

SELECt id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVINg distance < 25 ORDER BY distance LIMIT 0 , 20;

您可以将sql转换为所需的任何内容。我的意思是原理保持不变。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5631812.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-15

发表评论

登录后才能评论

评论列表(0条)

    保存