根据当前经纬度查询附近门店距离
latitude (纬度)、 longitude (经度) 为数据表字段名
:latitude: 当前纬度 替换为传入的参数即可
:longitude: 当前经度 替换为传入的参数即可
计算出的 distance 距离单位为km
SELECT
id,
name,
address,
latitude,
longitude,
ACOS(
SIN(
(:latitude: * 3.1415) / 180
) * SIN((latitude * 3.1415) / 180) + COS(
(:latitude: * 3.1415) / 180
) * COS((latitude * 3.1415) / 180) * COS(
(:longitude: * 3.1415) / 180 - (longitude * 3.1415) / 180
)
) * 6380 AS distance
FROM
store
WHERE
latitude > :latitude: - 1
AND latitude < :latitude: + 1
AND longitude > :longitude: - 1
AND longitude < :longitude: + 1
ORDER BY
distance ASC