Sunteți pe pagina 1din 1

Elementos espaciales a

una distancia de un
objecto (ST_Dwithin)
Pau Arag / 26/12/2013
Algunas veces tienes una capa con informacin espacial que quieres asociar a otra. Pongamos el ejemplo
de unos puntos que se suponen estn situados sobre una va de comunicacin (carretera, autopista). Por
ejemplo quieres trasladar la informacin de los puntos a la informacin lineal de la carretera. El problema
es que muchas veces el punto no esta situado justo encima del eje-linea que define la carretera y esta
operacin no resulta tan fcil como cuando se utiliza un polgono. Se puede hacer un buffer y despus un
solape, pero hay una manera mas rpida puedes utilizar ST_DWithin. Esta opcin te permite definir la
distancia a la que se considera que el objeto A esta contenido dentro del objeto B.
ST_DWithin(geometry g1, geometry g2, double precision distance_of_srid);
boolean ST_DWithin(geography gg1, geography gg2, double precision distance_meters);
boolean ST_DWithin(geography gg1, geography gg2, double precision distance_meters,
boolean use_spheroid);
Vamos a poner un ejemplo tenemos la capa A de puntos y la capa B de lneas y queremos seleccionar
aquellos puntos con su gemometria que esta dentro de los 4 metros de distncia de la capa B, mas el
identificador (id) de la capa B. El query sera el siguiente:

1 SELECT a.row1, a.rowb a.geom, b.id

2 FROM A as a , B as b

3 WHERE st_dwithin(a.geom, b.geom, 4);

As de simple es para realizar lo que normalmente se hace en dos pasos en tan solo uno.

S-ar putea să vă placă și