首頁  >  文章  >  資料庫  >  以下是一些標題選項,其風格和重點各不相同: **直接且資訊豐富:** * **如何使用 MySQL 找出半徑內的位置:改進的查詢** * **準確的地理位置搜索

以下是一些標題選項,其風格和重點各不相同: **直接且資訊豐富:** * **如何使用 MySQL 找出半徑內的位置:改進的查詢** * **準確的地理位置搜索

Susan Sarandon
Susan Sarandon原創
2024-10-26 09:44:03779瀏覽

Here are a few title options, varying in style and focus:

**Direct & Informative:**

* **How to Find Locations Within a Radius Using MySQL: An Improved Query**
* **Accurate Geolocation Search in MySQL: A Query for Finding Locations Within a Radius**

**Q

用於尋找半徑內位置的 MySQL 查詢

處理地理空間資料時使用搜尋指定半徑內位置的查詢。在這種情況下,需要一個查詢來檢索給定緯度和經度的 25 英里半徑內的所有行。但是,原始查詢並未傳回所有行的準確結果。

改進的查詢

改進的查詢透過使用更準確的公式計算行間距:

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

說明

  • 公式acos( ... ) 計算兩個經緯度點之間的角度。
  • 將此角度乘以 6371 可將結果轉換為英里。
  • 結果距離儲存在距離列中。
  • 選取距離小於指定值的所有行。

參數

  • :lat 和 :long 為中心點的緯度和經度。
  • :距離為所需的距離以英里為單位的半徑。

使用此改進的查詢,可以準確地檢索指定半徑內的所有行,消除原始查詢中出現的錯誤結果。

以上是以下是一些標題選項,其風格和重點各不相同: **直接且資訊豐富:** * **如何使用 MySQL 找出半徑內的位置:改進的查詢** * **準確的地理位置搜索的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn