Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Geokoder Google Maps do wyszukiwania miejsc w pobliżu z bazy danych MySQL

wyszukiwanie promienia:

select *,
    acos(cos(centerLat * (PI()/180)) *
     cos(centerLon * (PI()/180)) *
     cos(lat * (PI()/180)) *
     cos(lon * (PI()/180))
     +
     cos(centerLat * (PI()/180)) *
     sin(centerLon * (PI()/180)) *
     cos(lat * (PI()/180)) *
     sin(lon * (PI()/180))
     +
     sin(centerLat * (PI()/180)) *
     sin(lat * (PI()/180))
    ) * 3959 as Dist
from TABLE_NAME
having Dist < radius
order by Dist

3959 to promień Ziemi w milach. Zastąp tę wartość promieniem w KM lub dowolnej jednostce, aby uzyskać wyniki w tej samej jednostce.centerLat i centerLon są centrum wyszukiwania (wprowadzanie), podczas gdy lat i lon są polami w tabeli.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak policzyć całkowitą liczbę wierszy na wyjściu przemiennika ACF?

  2. Czy mogę użyć funkcji dla wartości domyślnej w MySql?

  3. MySQL Connector i kolizja nagłówków VC2010

  4. Wyszukiwanie pełnotekstowe MySQL według wartości kolumny?

  5. Jak naprawić źle sformatowany JSON w PHP?