mysql 下 計算 兩點 經緯度 之間的距離

公式如下,單位米:

第一點經緯度:lng1 lat1

第二點經緯度:lng2 lat2

round(6378.138*2*asin(sqrt(pow(sin((lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)*pow(sin( (lng1*pi()/180-lng2*pi()/180)/2),2)))*1000)


例如:

SELECT store_id,lng,lat,ROUND(6378.138*2*ASIN(SQRT(POW(SIN((22.299439*PI()/180-lat*PI()/180)/2),2)+COS(22.299439*PI()/180)*COS(lat*PI()/180)*POW(SIN((114.173881*PI()/180-lng*PI()/180)/2),2)))*1000)AS juli
FROM store_info
ORDER BY juli DESC
LIMIT 316

 

參考資料如下:

http://blog.sina.com.cn/s/blog_8da982ac0101jeh5.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章