sql距离查询,多多指教

SELECT
id,
name,
lat,
lng,

ROUND(
    6378.138 * 2 * ASIN(
        SQRT(
            POW(
                SIN(
                    (
                        用户纬度 * PI() / 180 - 纬度字段名* PI() / 180
                    ) / 2
                ),
                2
            ) + COS(用户纬度 * PI() / 180) * COS(纬度字段名 * PI() / 180) * POW(
                SIN(
                    (
                        用户经度 * PI() / 180 -   经度字段名 * PI() / 180
                    ) / 2
                ),
                2
            )
        )
    ) * 1000
) AS juli

FROM
fa_shop
ORDER BY
juli DESC

SELECT
    id,
		name,
    lat,
    lng,

    ROUND(
        6378.138 * 2 * ASIN(
            SQRT(
                POW(
                    SIN(
                        (
                            40.042307 * PI() / 180 - lat * PI() / 180
                        ) / 2
                    ),
                    2
                ) + COS(40.042307 * PI() / 180) * COS(lat * PI() / 180) * POW(
                    SIN(
                        (
                            116.317205 * PI() / 180 -   lng * PI() / 180
                        ) / 2
                    ),
                    2
                )
            )
        ) * 1000
    ) AS juli
FROM
fa_shop
ORDER BY
    juli DESC
发布了19 篇原创文章 · 获赞 0 · 访问量 444

猜你喜欢

转载自blog.csdn.net/wangzhae/article/details/104422916