1. 程式人生 > >mysql 根據經緯度查詢距離

mysql 根據經緯度查詢距離

SELECT *, ROUND(6378.138*2*ASIN(SQRT(POW(SIN((22.55*PI()/180-latitude*PI()/180)/2),2)+COS(22.55*PI()/180)*COS(latitude*PI()/180)*POW(SIN((114.05*PI()/180-longitude*PI()/180)/2),2)))) AS juli
FROM 57sy_common_user
ORDER BY juli asc

LIMIT 1,50

以上sql查出來距離單位為   千米

SELECT *, ROUND(6378.138*2*ASIN(SQRT(POW(SIN((22.55*PI()/180-latitude*PI()/180)/2),2)+COS(22.55*PI()/180)*COS(latitude*PI()/180)*POW(SIN((114.05*PI()/180-longitude*PI()/180)/2),2)))*1000) AS juli
FROM 57sy_common_user
ORDER BY juli asc

LIMIT 1,50

以上sql查出來距離單位為    米


使用者所在的經度  114.05 

使用者所在的緯度  22.55

原文連線:http://blog.sina.com.cn/s/blog_8da982ac0101jehl.html