Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL pilih koordinat dalam jangkauan

Anda dapat menggunakan apa yang disebut rumus Haversine .

$sql = "SELECT *, ( 3959 * acos( cos( radians(" . $lat . ") ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(" . $lng . ") ) + sin( radians(" . $lat . ") ) * sin( radians( lat ) ) ) ) AS distance FROM your_table HAVING distance < 5";

Dimana $lat dan $lng adalah koordinat titik Anda, dan lat/lng adalah kolom tabel Anda. Di atas akan mencantumkan lokasi dalam rentang 5 nm. Ganti 3959 oleh 6371 untuk mengubah ke kilometer.

Tautan ini mungkin berguna:https://developers.google.com/maps/articles/phpsqlsearch_v3

Sunting:Saya tidak melihat Anda menyebutkan Java. Contoh ini dalam PHP tetapi kuerinya tetap yang Anda butuhkan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kapitalisasi huruf pertama. MySQL

  2. memperbarui kolom dengan nomor urut mysql

  3. Cara Mengotomatiskan Migrasi dari Standalone MySQL ke Galera Cluster menggunakan Ansible

  4. Bagaimana cara menghindari tanda persen literal ketika opsi NO_BACKSLASH_ESCAPES diaktifkan?

  5. Cara Menyebarkan MySQL di Ubuntu dan Dikelola Sepenuhnya