Mysql 计算精度维度

mysql 5.6.1 加入了空间数据支持功能,新增了st_*相关函数,可以非常方便的计算两个地理坐标点的距离了,提高了计算效率。

//mysql 计算距离

DELIMITER $$
CREATE FUNCTION `getDistance`(lng1 float,lat1 float,lng2 float,lat2 float) RETURNS float
BEGIN
set @num = 2 * 6378.137 * ASIN(SQRT(POW(SIN(PI() * (lat1 - lat2) / 360), 2) + COS(PI() * lat1 / 180)* COS(lat2* PI() / 180) * POW(SIN(PI() * (lng1 - lng2) / 360), 2)));
RETURN @num * 1000;
END;
$$

直接在navicat 中新建存储过程就

posted @ 2019-05-03 00:21  小武汉  阅读(817)  评论(0编辑  收藏  举报