Mysql
 sql >> Base de données >  >> RDS >> Mysql

trouver des enregistrements avec latitude et longitude

Vous devez utiliser quelque chose comme ça pour obtenir les résultats les plus proches d'un emplacement donné

$query = sprintf(
         "SELECT foo,
                  6371 * ACOS( Cos(RADIANS(lat)) * COS(RADIANS(%f))
                      * COS(RADIANS(%f) - RADIANS(lng)) + SIN(RADIANS(lat))
                      * SIN(RADIANS(%f)) ) * 1000 AS distance
            FROM `%s`
        ORDER BY distance",
        $lat, $lag, $lng, $table
    );

Vous devez définir $lat , $lng et $table selon la structure de votre tableau et peut-être fixer une limite au résultat.

Vous obtenez une explication détaillée ici Geo Distance Search with MySQL .