MySQL:使用半正弦公式計算大圓距離
簡介
計算之間的距離球體上的兩個地理座標是地理空間應用的常見任務。一種廣泛使用的方法是半正矢公式,它可以為兩點之間的大圓距離提供準確的結果。
在MySQL 中使用半正矢公式
到在MySQL中實現半正矢公式,我們可以利用以下步驟:
範例SQL 查詢
這是一個範例SQL 查詢,它實作了半正矢公式來計算兩個之間的大圓距離座標:
SELECT ( 6371 * ACOS( COS(RADIANS(37)) * COS(RADIANS(lat)) * COS(RADIANS(lng) - RADIANS(-122)) + SIN(RADIANS(37)) * SIN(RADIANS(lat)) ) ) AS distance FROM markers WHERE distance < 25 ORDER BY distance LIMIT 0, 20;
此查詢將傳回25 公里半徑內距離座標(37, -122) 最近的20個位置的 id 和計算的距離。
結論
透過MySQL中的Haversine公式,我們可以精確地確定兩個地理區域之間的大圓距離座標。該技術對於需要精確距離計算的基於位置的應用程式特別有用。
以上是如何在 MySQL 中使用半正矢公式計算大圓距離?的詳細內容。更多資訊請關注PHP中文網其他相關文章!