sql >> Database teknologi >  >> RDS >> Mysql

Radius på 40 kilometer ved brug af bredde- og længdegrad

Jeg bruger denne forespørgsel til at få alle punkter inden for en $radius omkring $lat /$lng :

SELECT
    *,
    ( 6371 * acos( cos( radians({$lat}) ) * cos( radians( `lat` ) ) * cos( radians( `lng` ) - radians({$lng}) ) + sin( radians({$lat}) ) * sin( radians( `lat` ) ) ) ) AS distance
FROM `positions`
HAVING distance <= {$radius}
ORDER BY distance ASC

6371 er jordens radius im km. Og jeg har ikke opfundet det:http:/ /code.google.com/intl/da/apis/maps/articles/phpsqlsearch.html https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql a> (rediger:URL ændret)




  1. mysql WHERE IN array streng / brugernavn

  2. MySQL &PHP Parameter 1 som ressource

  3. Få OLD Value i MySQL Trigger EFTER opdateringserklæring

  4. Hvordan indsætter man data i MySQL med automatisk forøget primærnøgle?