美文网首页
mysql 根据经纬度计算距离的算法

mysql 根据经纬度计算距离的算法

作者: 乐观的猴 | 来源:发表于2020-01-06 18:13 被阅读0次
latitude 39.9639740000

longitude 116.4747040000

sql 查询语句, 距离单位是 m

    SELECT
        *,
        ROUND(
            6378.138 * 2 * ASIN(
                SQRT(
                    POW(
                        SIN(
                            (
                                39.9639740000 * PI() / 180 - lat * PI() / 180
                            ) / 2
                        ),
                        2
                    ) + COS(39.9639740000 * PI() / 180) * COS(lat * PI() / 180) * POW(
                        SIN(
                            (
                                116.4747040000 * PI() / 180 - lon * PI() / 180
                            ) / 2
                        ),
                        2
                    )
                )
            ) * 1000
        ) AS distance
    FROM
        area
    ORDER BY
        distance ASC

相关文章

网友评论

      本文标题:mysql 根据经纬度计算距离的算法

      本文链接:https://www.haomeiwen.com/subject/aggkactx.html