sql:

drop function getDistance;

DELIMITER $$

CREATE DEFINER=`root`@`localhost` FUNCTION `getDistance`(

lng1 float(10,7)

,lat1 float(10,7)

,lng2 float(10,7)

,lat2 float(10,7)

) RETURNS double

begin

declare d double;

declare radius int;

set radius = 6378140; #假设地球为正球形,直径为6378140米

set d = (2*ATAN2(SQRT(SIN((lat1-lat2)*PI()/180/2)

*SIN((lat1-lat2)*PI()/180/2)+

COS(lat2*PI()/180)*COS(lat1*PI()/180)

*SIN((lng1-lng2)*PI()/180/2)

*SIN((lng1-lng2)*PI()/180/2)),

SQRT(1-SIN((lat1-lat2)*PI()/180/2)

*SIN((lat1-lat2)*PI()/180/2)

+COS(lat2*PI()/180)*COS(lat1*PI()/180)

*SIN((lng1-lng2)*PI()/180/2)

*SIN((lng1-lng2)*PI()/180/2))))*radius;

return d;

end

$$

DELIMITER ;

select getDistance(39.9458190611,116.7906536806,39.9475430611,116.7971416806);

JS:

//进行经纬度转换为距离的计算

function Rad(d){

return d * Math.PI / 180.0;//经纬度转换成三角函数中度分表形式。

}

//计算距离 返回米,参数分别为第一点的纬度,经度;第二点的纬度,经度

function GetDistance(lat1,lng1,lat2,lng2){

var radLat1 = Rad(lat1);

var radLat2 = Rad(lat2);

var a = radLat1 - radLat2;

var b = Rad(lng1) - Rad(lng2);

var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) +

Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));

s = s *6378.137 ;// EARTH_RADIUS;

s = Math.round(s * 10000) / 10; //输出为米

//s=s.toFixed(4);

return s;

}

mysql算gps距离_mysql JS 计算两GPS坐标的距离函数:相关推荐

  1. 坐标反算计算起始方位角_谁会坐标正算反算的公式,怎么计算两个坐标的方位角...

    匿名用户 1级 2013-06-15 回答 现在都用5800了,谁还用4800.通过方位角和距离,求出和已知点都坐标增量.然后求出该点坐标.如果你都已知点是个假设的,那么还要用坐标转换,求出真正的坐标 ...

  2. mysql gps数据查询_Mysql数据库中计算两GPS坐标的距离

    Mysql数据库中计算两GPS坐标的距离有两种方式: 1.直接使用SQL语句:#lat为纬度, lng为经度, 一定不要弄错 declare @lng1 float; declare @lat1 fl ...

  3. JS 计算两个点(经纬度)的距离;判断某一点是否在某一区域范围内

    JS 计算两个点(经纬度)的距离 经度相同,纬度不同 纬度每隔0.00001度,距离相差约1.1米. 纬度每隔0.0001度,距离相差约11米. 纬度每隔0.001度,距离相差约111米. 纬度每隔0 ...

  4. 经纬度计算距离html,js版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. java版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离 public class GoogleMapHelper {private static double EARTH_RADIUS = 6378.137; //地球半径//将 ...

  6. JS计算两个日期时间差,天 小时 分 秒格式

    JS计算两个日期时间差,天 小时 分 秒格式 function getDateDiff(dateTimeStamp) {var minute = 1000 * 60;var hour = minute ...

  7. 两个坐标的距离C语言,计算两个经纬度直线距离 安卓app开发

    .Net计算方式 public static class CCalculationGPSCoordinateDistance { private const double dEARTH_RADIUS ...

  8. JS 计算两个时间的间隔

    js 计算两个时间之间间隔的天数 var start = new Date('2019-12-10'); //开始的时间 var end = new Date('2020-01-09'); //结束的 ...

  9. Android 高德地图根据地址获取经纬度,计算两个坐标的距离

    1.到高德开放平台申请,获取key 高德开放平台:https://lbs.amap.com/ 2.下载高德定位及地址搜索SDK:https://download.csdn.net/download/m ...

最新文章

  1. C#正则表达式引发的CPU跑高问题以及解决方法
  2. 扩展和修改 Enterprise Library 缓存应用程序块
  3. shell在二级python_在python下运行时在shell脚本之间传递shell变量[duplicate]
  4. python CMAKE的使用
  5. Heap(堆结构/优先队列)-Swift实现
  6. SAP UI5 onDataLoaded hook的用法
  7. zabbix专题:附加 zabbix配置文件详解
  8. 手机伪原创视频处理工具 视频md5修改器ios
  9. 是指直接进行国际联网的计算机信息网络,网络安全合规指引题库:计算机信息网络直接进行国际联网,可以使用邮电部国家公用电信网提供的国际出入口信道。单位和个人也可以自行建立信道进行国际联网。()...
  10. java 200以内质数_Java:2-200内的质数
  11. 苹果屏蔽更新描述文件_iOS屏蔽更新文件失效,教你两个技巧暂停更新
  12. excel处理几十万行数据_如何用Excel处理200万行以上数据?
  13. 论文翻译——Skin Lesion Synthesis with Generative Adversarial Networks
  14. Qua Vadis Eclipse? 第一部分
  15. 看到强烈的太阳光你会不由自主的打喷嚏吗?
  16. 服务器怎么直接访问数据库文件路径,如何在服务器中找到数据库文件路径
  17. ANTLR4: No method for rule r or it has arguments
  18. 项目启动成功,但是Eureka页面不显示
  19. 百度云(主机管理密码、FTP登录密码、MySQL账号密码)配置 - 入口篇
  20. 正则匹配ip地址,手机号,对象类型

热门文章

  1. 【操作系统 3.了解实模式与保护模式的区别】
  2. 06.实模式进入保护模式
  3. Linux tar 命令 将归档内指定文件解压到指定目录
  4. webstorm项目上传git遇到的坑
  5. 好程序员大数据培训分享大数据概述
  6. Poading Analysis
  7. sas sql中有类似mysql的格式_[转载][Base SAS] SAS SQL语句函数
  8. 线性代数学习笔记(二十一)——向量间的线性关系(一)
  9. 面试之Java圣经1
  10. js 对象合并 与数组合并