MySQL:使用半正弦公式计算大圆距离
简介
计算之间的距离球体上的两个地理坐标是地理空间应用中的常见任务。一种广泛使用的方法是半正矢公式,它可以为两点之间的大圆距离提供准确的结果。
在 MySQL 中使用半正矢公式
到在MySQL中实现半正矢公式,我们可以利用以下步骤:
示例 SQL 查询
这是一个示例 SQL 查询,它实现了半正矢公式来计算两个之间的大圆距离坐标:
SELECT ( 6371 * ACOS( COS(RADIANS(37)) * COS(RADIANS(lat)) * COS(RADIANS(lng) - RADIANS(-122)) + SIN(RADIANS(37)) * SIN(RADIANS(lat)) ) ) AS distance FROM markers WHERE distance < 25 ORDER BY distance LIMIT 0, 20;
此查询将返回 25 公里半径内距离坐标 (37, -122) 最近的 20 个位置的 id 和计算的距离。
结论
通过MySQL中的Haversine公式,我们可以准确地确定两个地理区域之间的大圆距离坐标。该技术对于需要精确距离计算的基于位置的应用程序特别有用。
以上是如何在 MySQL 中使用半正矢公式计算大圆距离?的详细内容。更多信息请关注PHP中文网其他相关文章!