sql语句怎么写算坐标经纬度之间的距离?我是mysql数据库。 请详细点!谢谢!

sql语句怎么写算坐标经纬度之间的距离?我是mysql数据库。 请详细点!谢谢!,第1张

你可以在系统中创建一个二维数组,把每个坐标作为一个二维数组存储起来,写一个方法,输入2个坐标的时候,自动计算两个坐标之间的距离。

比如我的坐标是:2,3;你的坐标是4,6

那么定义一个方法:

public double getDistance(double x1,double y1,double x2,double y2){

double a = Math.abs(x1-x2)//绝对值

double b = Math.abs(y1-y2)//绝对值

return Math.hypot(a,b)//返回两者的平方和的开根

}

注:

网上有很多的方法,但是最终结果都有很大的差异,对于半径取值(地球赤道半径6378.137千米,极半径6356.752千米,平均半径约6371千米)根据自己需求进行定义计算结果应与其他地图软件进行对比,保证数值正确


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

原文地址: http://outofmemory.cn/zaji/6142976.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存