关闭

MYSQL 计算经纬度距离

871人阅读 评论(0) 收藏 举报
分类:

MySQL calculate distance between two latitude/longitude coordinates

https://gist.github.com/Usse/4086343

CREATE FUNCTION `lat_lng_distance` (lat1 FLOAT, lng1 FLOAT, lat2 FLOAT, lng2 FLOAT)
    RETURNS FLOAT
    DETERMINISTIC
    BEGIN
        RETURN 6371 * 2 * ASIN(SQRT(
            POWER(SIN((lat1 - abs(lat2)) * pi()/180 / 2),
            2) + COS(lat1 * pi()/180 ) * COS(abs(lat2) *
            pi()/180) * POWER(SIN((lng1 - lng2) *
            pi()/180 / 2), 2) ));
    END

--Returns the distance in kilometers, assuming a earth radius of 6,371 km.
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:176972次
    • 积分:2186
    • 等级:
    • 排名:第19106名
    • 原创:58篇
    • 转载:12篇
    • 译文:0篇
    • 评论:31条
    最新评论