Pengiraan Jarak Bulatan Besar Berasaskan MySQL (Formula Haversine)
Untuk mengira jarak bulatan besar antara dua titik geografi di permukaan Bumi, formula Haversine boleh digunakan. Formula ini memerlukan longitud dan latitud kedua-dua titik.
Dalam keadaan ini, anda menyasarkan untuk melaksanakan pengiraan ini sepenuhnya dalam MySQL, menghapuskan keperluan untuk PHP. Untuk mencapai matlamat ini, pertimbangkan pernyataan SQL berikut yang diilhamkan oleh Soalan Lazim Kod Google:
SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin(radians(lat)) ) ) AS distance FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0, 20;
Pernyataan ini menganggap titik permulaan latitud 37 dan longitud -122 dan mendapatkan semula 20 lokasi terdekat dalam radius 25 batu . Ia menggunakan formula Haversine untuk mengira jarak antara setiap titik dan titik permulaan. Dengan mengubah suai nilai latitud dan longitud dengan sewajarnya, anda boleh menyesuaikan pertanyaan mengikut keperluan khusus anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Jarak Bulatan Besar Menggunakan Formula Haversine MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!