Functie localizare maps

Am un site cu o baza de date cu persoane, unde tin inclusiv adresa persoanelor respective. Am nevoie de o functie noua, sa am o mapa si sa selectez zona de pe Maps, dupa ce am selectat-o sa fac o comparatie cu adresa persoanelor din baza de date (judet/comuna/strada cel mai probabil) si sa-i extrag doar pe cei care fac parte din aria respectiva.

Ce aplicatie care sa faca asta imi recomandati? Nu stiu Maps daca are asta si daca e gratis. Sau poate e altceva mai simplu.

Nu stiu exact ce intelegi prin “am nevoie de o functie” dar daca ai coordonatele zonei selectate (un poligon) si ai in baza de date coordonatele in format POINT(lat,long), e un query simplu pentru a afla toate persoanele cu pozitie in interiorul poligonului.

SET @poligon = ST_GeomFromText('POLYGON((lat1 long1, lat2 long2, lat3 long3, ..., latN longN))');
SELECT *  FROM persoane WHERE ST_Within(location, @poligon);

2 Likes

trebuie ca baza de date sa stie sa caute dupa coordonate (si tu sa scoti coordonate dintr-o adresa de la api-ul de harti)

Pt ce baza de date si mai ales ce versiune ca este posibil sa nu mearga pt ceva mai vechi

Mai sunt niște baze de date la liber cu orașele din România si coordonatele lor:

1 Like

MySQL parca stie radius search dupa coordonate. Sau era ceva procedura stocata pentru asta…

mysql ultimul stable stie de chestia asta. termenul de investigat ar fi “geospatial query”

Depinde ce vrei sa zici prin functie.

Eu nu sunt dev, dar daca as avea nevoie de ceva quick and dirty as merge pe orice excel care sa te lege la db.

Sau as construi un raport simplu intr-o solutie de BI care imi permite sa-l fac embedded oriunde. Sunt multe solutii free care iti permit 1 raport cu un 1 conector la db. (Vezi Google Looker de ex)

Uite cine e in business :smiley:

1 Like