Měli byste hledat vzorec Haversine, ale dobrý začátek by mohl být:
- Vytvoření vyhledávače obchodů pomocí PHP, MySQL a Map Google - Viz část 'Hledání umístění pomocí MySQL'
- Geo/prostorové vyhledávání s MySQL
Citace z první adresy URL:
Zde je příkaz SQL, který najde 20 nejbližších míst, která jsou v okruhu 25 mil od souřadnice 37, -122. Vypočítá vzdálenost na základě zeměpisné šířky/délky daného řádku a cílové zeměpisné šířky/délky a poté se zeptá pouze na řádky, kde je hodnota vzdálenosti menší než 25, seřadí celý dotaz podle vzdálenosti a omezí jej na 20 výsledků. Chcete-li hledat podle kilometrů místo mílí, nahraďte 3959 6371.
SELECT
id,
( 3959
* acos( cos( radians(37) )
* cos( radians( lat ) )
* cos( radians( lng ) - radians(-122) )
+ sin( radians(37) )
* sin( radians( lat ) )
)
)
AS distance
FROM markers
HAVING distance < 25
ORDER BY distance
LIMIT 0 , 20;