根據經緯度計算兩點距離 MySQL

2021-10-05 14:28:49 字數 607 閱讀 4713

先不說其他的,直接上sql語句吧:

convert((6371 * acos(cos(radians(#)) * cos(radians(substring_index(a.coords,',',1))) * cos(radians(substring_index(substring_index(a.coords,';',1),',',-1)) - radians(#))

+ sin(radians(#)) * sin(radians(substring_index(a.coords,',',1))))),decimal(10,1)) as "distance"

說明:計算的是兩點之間的直線距離

其中 :

latitude------維度,

longitude-------精度,

coords是資料庫儲存貨源的乙個起點和終點的經緯度

資料儲存形式如下圖:

經緯度:如上圖所示的值第一列,34.75343400296841為維度,113.63141597343925為經度。

給定經緯度計算距離 根據兩點經緯度計算距離

根據兩點經緯度計算距離 這些經緯線是怎樣定出來的呢?地球是在不停地繞地軸旋轉 地軸是一根通過地 球南北兩極和地球中心的 假想線 在地球中腰畫乙個與地軸垂直的大圓圈,使圈上的每一點都和南北兩 極的距離相等,這個圓圈 就叫作 赤道 在赤道的南北兩邊,畫出許多和赤道平行的圓圈,就是 緯 圈 構成這些圓圈的...

根據兩點經緯度計算距離

這些經緯線是怎樣定出來的呢?地球是在不停地繞地軸旋轉 地軸是一根通過地球南北兩極和地球中心的 假想線 在地球中腰畫乙個與地軸垂直的大圓圈,使圈上的每一點都和南北兩極的距離相等,這個圓圈 就叫作 赤道 在赤道的南北兩邊,畫出許多和赤道平行的圓圈,就是 緯圈 構成這些圓圈的線段,叫做緯線。我們把赤道定為...

根據兩點經緯度計算距離

android sdk 中提供了location類裡面有計算兩點之間的距離這些經緯線是怎樣定出來的呢?地球是在不停地繞地軸旋轉 地軸是一根通過地球南北兩極和地球中心的 假想線 在地球中腰畫乙個與地軸垂直的大圓圈,使圈上的每一點都和南北兩極的距離相等,這個圓圈 就叫作 赤道 在赤道的南北兩邊,畫出許多...