mysql中计算两点座标距离

mysql中计算两点坐标距离
CREATE FUNCTION `calc_distance`(`lat1` double,`lng1` double,`lat2` double,`lng2` double) RETURNS double
BEGIN
	DECLARE distance double DEFAULT 0.0;
	SET distance = 6367.445*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)));
  #unit is KM
	RETURN distance;
END

 返回的单位是千米