通过mysql计算两个经纬度之差
select ROUND(
6371.393 * 2 * ASIN(
SQRT(
POW(
SIN(
(
22.5907* 3.1415926 / 180 - 22.58820 * PI() / 180
) / 2
),
2
) + COS(22.5907 * 3.1415926 / 180) * COS(22.58820 * PI() / 180) * POW(
SIN(
(
113.9599 * 3.1415926 / 180 - 113.957523 * PI() / 180
) / 2
),
2
)
)
) * 1000
) AS distance_um
原因:因为现在很多订餐平台或者其他平台,都有根据当前定位查找附近500米或者1000米的商家,mysql提供了方法去查询。
步骤:前端取出当前定位的经纬度,将前端获取的经纬度传入数据库查询。单位为M