On 2015-06-09 19:23, Fabio Luis Rodrigues wrote:
Retornar todos os endereços 2Km próximo de uma localização.
Ex: Necessito retornar todas as filiais de lojas próxima a 2Km da
casa do cliente.
É possível fazer isso?
Como seria aproximadamente esta query?
Partindo do principio que uma distancia linear 'e suficiente podes usar
a função ST_DWithin [1] de PostGIS [2].
SELECT f.loja, c.cliente
FROM filial f INNER JOIN cliente c
ON ST_DWithin(f.geog, c.geog, 2000); -- devolve todas as filiais que
estão a menos de 2000 m do cliente
Se ainda não tens a geometria nas tabelas filial e cliente:
- ... ADD COLUMN geom(POINT,'epsg_code')
- ... SET geom = ST_SetSRID( -- indica o sistema de coordenadas do ponto
ST_MakePoint(x,y) -- cria a geometria do
ponto de observação
,epsg_code) -- define o código EPSG do
sistema de coordenadas do ponto
[1] http://postgis.net/2013/08/26/tip_ST_DWithin
[2] http://postgis.net/
Boa sorte.
--
Eloi Ribeiro
Geoinformatic
51.9871, 5.6661
http://eloiribeiro.eu
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral