提高基於半徑搜尋的MySQL 經度和緯度查詢的準確性
在mySQL 中執行基於半徑的位置搜尋時,一個常見問題正在獲得明顯偏離指定半徑的結果。這種差異通常是由距離計算公式中的錯誤引起的,從而導致距離測量不準確。
要解決此問題,請考慮使用稍微不同的距離計算方法的細化查詢:
SELECT `id`, ( 6371 * acos( cos( radians( :lat ) ) * cos( radians( `lat` ) ) * cos( radians( `long` ) - radians( :long ) ) + sin(radians(:lat)) * sin(radians(`lat`)) ) ) `distance` FROM `location` HAVING `distance` < :distance ORDER BY `distance` LIMIT 25
在此查詢中:
此公式基於半正弦公式計算距離,該公式提供比使用的公式更準確的結果在你原來的查詢中。透過合併此修訂後的公式,您可以最佳化半徑搜尋功能,確保傳回的結果符合指定的半徑範圍。
以上是## 如何提高 MySQL 中基於半徑的位置搜尋的準確性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!