Kaedah SQL untuk mencari latitud dan longitud terdekat
Dalam aplikasi geografi spatial, menentukan koordinat latitud dan longitud yang paling hampir dengan sistem koordinat tertentu adalah tugas biasa. Tugas ini timbul apabila anda perlu mengenal pasti bandar terdekat, tanda tempat atau tempat menarik lain berdasarkan jaraknya dari lokasi tertentu.
Satu cara untuk menyelesaikan masalah ini ialah menggunakan pertanyaan SQL. SQL menyediakan satu siri fungsi yang boleh digunakan untuk mengira jarak dan mendapatkan semula data berdasarkan keadaan jarak.
Struktur pertanyaan
Pertanyaan berikut menggunakan formula Haversine untuk mengira jarak antara koordinat yang diberikan dan semua koordinat dalam jadual pangkalan data. Formula ini menentukan jarak berdasarkan perbezaan latitud dan longitud, dengan mengambil kira kelengkungan Bumi:
<code class="language-sql">SELECT latitude, longitude, SQRT( POW(69.1 * (latitude - [startlat]), 2) + POW(69.1 * ([startlng] - longitude) * COS(latitude / 57.3), 2)) AS distance FROM TableName HAVING distance < 25 ORDER BY distance ASC;</code>
ORDER BY distance ASC
Isih keputusan dalam tertib menaik mengikut jarak, koordinat terdekat dahulu. Pelaksanaan pertanyaan
Apabila pertanyaan ini dilaksanakan, ia akan mengembalikan latitud dan longitud koordinat terdekat dalam ambang jarak yang ditentukan. Keputusan diisih mengikut jarak, dengan koordinat terdekat disenaraikan dahulu.
Dengan kaedah ini, anda boleh mencari koordinat latitud dan longitud terdekat yang memenuhi kriteria anda dengan berkesan. Pengetahuan ini boleh digunakan dalam pelbagai bidang seperti perkhidmatan berasaskan lokasi, logistik dan analisis data.
Atas ialah kandungan terperinci Bagaimanakah SQL Boleh Mencari Latitud dan Longitud Terdekat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!