sql 根据经纬度计算距离

O2O场景下,有很多地方需要用到当前用户距离商户的距离,这个距离在MySQL中如何计算是我们经常遇到的问题,在此记录下计算距离的公式如下:
SQL语句如下

( 6371 * acos( cos( radians(#curLatitude#) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(#curLongitude#) ) + sin( radians(#curLatitude#) ) * sin( radians( latitude ) ) ) ) as distance

其中:#curLatitude#、#curLatitude#是当前用户当前位置的经纬度;
latitude、longitude是表中记录的经纬度;
PS:计算出来的单位是千米;

你可能感兴趣的:(sql 根据经纬度计算距离)