mysql求两点之间距离

更新时间:02-09 教程 由 陌流兮 分享

MySQL是一款广泛应用的关系型数据库管理系统,提供了许多常用的查询函数,其中求两点之间距离是常见需求之一。

SELECT id, name, ( 6371 * ACOS( COS( RADIANS( l1.lat ) ) * COS( RADIANS( l2.lat ) ) * COS( RADIANS( l2.lng ) - RADIANS( l1.lng ) ) + SIN( RADIANS( l1.lat ) ) * SIN( RADIANS( l2.lat ) ) ) ) AS distance FROM locations AS l1 JOIN locations AS l2 ON l1.id<>l2.id WHERE l1.id = 1 ORDER BY distance ASC;

上述代码中,l1和l2分别表示两点的经纬度,6371表示地球的半径,ACOS表示反余弦函数,RADIANS表示将角度转换为弧度,distance表示两点之间的距离。

通过这个查询函数,可以方便地计算两点之间的距离,并进行排序等操作,为应用开发提供便利。

声明:关于《mysql求两点之间距离》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2260489.html