MySQL经纬度之间的距离计算函数

MySQL函数 12/27 阅读 329 views次 人气 0
摘要:

MySQL经纬度之间的距离计算函数

CREATE FUNCTION toDistance (
	curlat double, 
	curlon double, 
	shoplat double, 
	shoplon double
)
RETURNS double
BEGIN
	DECLARE dis double;
	SET dis = acos(sin(curlat * 3.1415 / 180) * sin(shoplat * 3.1415 / 180) + cos(curlat * 3.1415 / 180) * cos(shoplat * 3.1415 / 180) * cos(curlon * 3.1415 / 180 - shoplon * 3.1415 / 180)) * 6380;
	RETURN dis;
END;


执行:

select toDistance(117.310000, 39.130000,117.320000, 39.230000);
select toDistance('117.310000', '39.130000','117.320000', '39.230000');

输出:5.228928946460395

评论

该文章不支持评论!

分享到: