Saya mencoba menghitung jarak antara dua posisi di peta. Saya telah menyimpan data saya: Bujur, Lintang, X POS, Y POS.
Saya sebelumnya telah menggunakan potongan di bawah ini.
DECLARE @orig_lat DECIMAL
DECLARE @orig_lng DECIMAL
SET @orig_lat=53.381538 set @orig_lng=-1.463526
SELECT *,
3956 * 2 * ASIN(
SQRT( POWER(SIN((@orig_lat - abs(dest.Latitude)) * pi()/180 / 2), 2)
+ COS(@orig_lng * pi()/180 ) * COS(abs(dest.Latitude) * pi()/180)
* POWER(SIN((@orig_lng - dest.Longitude) * pi()/180 / 2), 2) ))
AS distance
--INTO #includeDistances
FROM #orig dest
Namun saya tidak mempercayai data yang keluar dari ini, tampaknya memberikan hasil yang sedikit tidak akurat.
Beberapa contoh data jika Anda membutuhkannya
Latitude Longitude Distance
53.429108 -2.500953 85.2981833133896
Adakah yang bisa membantu saya dengan kode saya, saya tidak keberatan jika Anda ingin memperbaiki apa yang sudah saya miliki jika Anda memiliki cara baru untuk mencapai ini, itu akan sangat bagus.
Sebutkan dalam unit pengukuran hasil Anda.