sql >> Databáze >  >> RDS >> Mysql

php mysql porovnat long a lat, vrátit ty pod 10 mil

Pravděpodobně to nemusíte dělat v kódu, pravděpodobně to všechno můžete udělat v DB. pokud používáte prostorový index . Dokumentace MySQL pro prostorový index

UPRAVIT, aby odrážela vaši úpravu:

Myslím, že chcete něco takového:

SELECT *, ((ACOS(SIN($lat * PI() / 180) * SIN(lat * PI() / 180) + COS($lat * PI() / 180) * COS(lat * PI() / 180) * COS(($lon - lon) * PI() / 180)) * 180 / PI()) * 60 * 1.1515) AS distance FROM locations HAVING distance<='10' ORDER BY distance ASC

VIA:http://www.zcentric.com/blog/2007/03 /calculate_distance_in_mysql_wi.html :



  1. MySQL INSERT INTO s dvojí podmínkou pro IF NOT EXIST

  2. Oracle SQL Injection Block s DBMS_ASSERT

  3. COUNT(*) z více tabulek v MySQL

  4. Synchronizujte všechny uživatelské role mezi dvěma instalacemi Wordpress sdílejícími stejné tabulky wp_users a wp_usermeta.