PHP,Mysql根據經緯度計算距離並排序


網上給出的計算公式是這樣的:

 

  • Lng1表示A點緯度和經度,Lat2 Lng2 表示B點緯度和經度
  • a = Lat1 – Lat2為兩點緯度之差 b = Lng1 -Lng2 為兩點經度之差
  • 6378.137為地球半徑,單位為公里
  • 計算出來的結果單位為公里

 

select *,(2 * 6378.137* ASIN(SQRT(POW(SIN(PI()*(111.86141967773438-lng)/360),2)+COS(PI()*33.07078170776367/180)* COS(lat * PI()/180)*POW(SIN(PI()*(33.07078170776367-lat)/360),2)))) as juli from `area` 
order by juli asc limit 0,20

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM