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

Poloměr 40 kilometrů pomocí zeměpisné šířky a délky

Tento dotaz používám k získání všech bodů v $radius kolem $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 je poloměr Země v km. A já jsem to nevymyslel:http:/ /code.google.com/intl/cs/apis/maps/articles/phpsqlsearch.html https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql (edit:URL změněno)




  1. 5 způsobů, jak získat krátký název měsíce z data na serveru SQL

  2. HTML – Změnit\Aktualizovat obsah stránky bez obnovení\znovu načíst stránku

  3. Vytvořte dočasnou tabulku na serveru SQL Server

  4. Proč Postgres nepoužívá index?