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

Dapatkan semua catatan dari database MySQL yang ada di dalam Google Maps .getBounds?

Semua jawaban sebelumnya hanya berfungsi untuk 1/4 dunia!

Jawaban W3t Tr3y hampir, tetapi ada kesalahan (tambahan "<").

Semuanya hanya bekerja untuk Amerika Serikat, karena di belahan bumi UTARA. Mereka tidak bekerja untuk belahan bumi selatan, atau negara timur (kanan greenwich).

Inilah solusi sederhana tanpa fungsi atau hal rumit.

huruf adalah hasil dalam urutan yang Anda dapatkan dari map.getBounds() yaitu swlat, swlng, nelat, nelng =a, b, c, d.

SELECT * FROM tilistings WHERE
(CASE WHEN a < c
        THEN lat BETWEEN a AND c
        ELSE lat BETWEEN c AND a
END) 
AND
(CASE WHEN b < d
        THEN lng BETWEEN b AND d
        ELSE lng BETWEEN d AND b
END) 

atau solusi lain dengan dan/atau (Anda dapat menguji kecepatannya, saya tidak tahu cara menjalankannya lebih dari sekali di WorkBench)

SELECT * FROM tilistings WHERE
(a < c AND lat BETWEEN a AND c) OR (c < a AND lat BETWEEN c AND a)
AND 
(b < d AND lng BETWEEN b AND d) OR (d < b AND lng BETWEEN d AND b)

Sekarang Anda dapat memetakan seluruh dunia :) Saya harap seseorang dapat menandai jawaban di atas sebagai salah, karena mereka membuat kita kehilangan banyak waktu untuk jutaan orang belajar seperti saya. Saya bertanya-tanya bagaimana mereka mendapatkan begitu banyak suara ketika mereka benar-benar tidak bekerja!

PS:Peluang tepi piksel peta Anda cocok dengan nilai tepat 15 desimal dari koordinat adalah zillion kali lebih kecil daripada peluang kehilangan seluruh 3/4 dunia!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Masalah PHP OOP dengan database

  2. masalah peringatan:mengharapkan parameter 1 menjadi mysqli_result

  3. Peringatan:mysql_connect():Akses ditolak untuk pengguna 'root'@'localhost' (menggunakan kata sandi:YA)

  4. Python3.4 tidak dapat menginstal mysql-python

  5. Lewati baris kesalahan saat memuat data ke tabel mysql dari file yang dibatasi