发布时间:2018-05-13作者:laosun阅读(4191)
加入有两个点:
第一点 116.359751000, 39.936868000
第二点 117.291179000, 35.657141000
在mysql数据库中执行如下语句即可:
select round(6378.138*2*asin(sqrt(pow(sin((39.936868000*pi()/180-35.657141000*pi()/180)/2),2)+cos(39.936868000*pi()/180)*cos(35.657141000*pi()/180)* pow(sin( (116.359751000*pi()/180-117.291179000*pi()/180)/2),2)))*1000)
当然我们也可以创建一个函数:
delimiter $$ CREATE FUNCTION FUN_JW_DIST(lng1 double(15,9), lat1 double(15, 9), lng2 double(15,9), lat2 double(15,9)) RETURNS int BEGIN DECLARE dist int; SET dist = round(6378.138*2*asin(sqrt(pow(sin((lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)* pow(sin((lng1*pi()/180-lng2*pi()/180)/2),2)))*1000); RETURN (dist); END$$ delimiter ;
然后使用:
select FUN_JW_DIST(116.359751000, 39.936868000, 117.291179000, 35.657141000);
删除这个函数
drop function FUN_JW_DIST;
版权属于: 技术客
原文地址: https://www.sunjs.com/article/detail/892e3258b3ae457284eab48f00e767bb.html
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。