Mysql常用语句
# 根据经纬度计算距离并排序
网上给出的计算公式是这样的:
- Lng1 表示 A 点纬度和经度,Lat2 Lng2 表示 B 点纬度和经度
- a = Lat1 – Lat2 为两点纬度之差 b = Lng1 -Lng2 为两点经度之差
- 6378.137 为地球半径,单位为公里
- 计算出来的结果单位为公里
SELECT * FROM sb_user_geo
ORDER BY ACOS(SIN(($city_lat * 3.1415) / 180 ) * SIN((lat * 3.1415) / 180 ) + COS(($city_lat * 3.1415) / 180 ) * COS((lat * 3.1415) / 180 ) * COS(($city_lng * 3.1415) / 180 - (lng * 3.1415) / 180 ) ) * 6378.137 ASC
limit 30
1
2
3
2
3
lat
:表中的纬度lnt
:表中的经度$city_lat
:某一点的纬度$city_lng
:某一点的经度
上次更新: 2021/12/31, 15:12:00