location字段為point類型的空間坐標
SELECT
id,
name,
address,
x(location) as 經度,
Y(location) as 緯度,
ROUND(
6378.138 * 2 * ASIN(
SQRT(
POW(
SIN(
(
40.0497810000 * PI() / 180 - lat * PI() / 180
) / 2
),
2
) + COS(40.0497810000 * PI() / 180) * COS(lat * PI() / 180) * POW(
SIN(
(
116.3424590000 * PI() / 180 - lng * PI() / 180
) / 2
),
2
)
)
) * 1000
) AS 距離
FROM
oc_district
HAVING
距離 < 400000
ORDER BY
距離 ASC