Untuk menghitung jarak atau radius 2 lokasi Latitude dan Longitude dalam kilometer (km) di postgresql dapat menggunakan query berikut ini :
SELECT ( 6371 * acos( cos( radians( LAT1 ) ) * cos( radians( LAT2 ) ) * cos( radians( LONG@ )
- radians(LAT1) ) + sin( radians( LONG1 ) ) * sin( radians( LAT2 ) ) ) ) as KM ;
Misalnya kita punya 2 lokasi:
1. lat/lng ( 5.207654 / 96.695329 )
2. lat/lng ( -6.32479/ 107.322441)
SELECT ( 6371 * acos( cos( radians( 5.207654 ) ) * cos( radians( -6.32479 ) ) * cos( radians( 107.322441 )
- radians(96.695329) ) + sin( radians(5.207654) ) * sin( radians( -6.32479 ) ) ) ) as KM ;
Maka hasil radius yang didapat adalah :
1742,39355699897 km
Selamat mencoba. :)
1 comments:
kalau untuk satuan Meter apakah ad script lg gan? Mohon pencerahannya gan.. Misalnya saya mau ambil dari data pelanggan yang terdekat ke objek tersebut maksimal 300M yang terdeteksi yang mana saja
Post a Comment