1. 程式人生 > >mysql自帶函式st_distance查詢兩個經緯度點的距離

mysql自帶函式st_distance查詢兩個經緯度點的距離

SELECT
   s.id,s.name,s.lng,s.lat, 
   (st_distance (point (lng, lat),point(115.067,34.76) ) / 0.0111) AS distance
FROM road_servicearea s
HAVING distance<30
ORDER BY distance

假設我當時的座標:115.067,34.76 需要查詢我附近30KM內站點,並按照距離由近及遠排列

 

st_distance 為mysql5.6+版本中開始自帶的經緯度計算函式,將直接返回 2個經緯度

st_distance (POINT (latitude1,longitude1),POINT(latitude2,longitude2)) / 0.0111