6 votos

Encontrar a todos los vecinos para todos los polígonos de Spatialite

Disculpe si esta es una pregunta básica pero soy nuevo en el Spatialite...

Tengo un conjunto de datos con el código postal de polígonos y me gustaría crear una lista en donde para cada código postal tenemos una lista con todos los vecinos (es decir, adyacente) los códigos postales.

Si hago lo siguiente que funciona, pero solo para 1 código postal. Lo que me gustaría hacer es repetir automáticamente para todos los códigos postales en los datos (ya que tengo miles de códigos).

SELECT p1.ROWID, p1.ZCTA5CE10 FROM "US_zcta5_2010" p1, "US_zcta5_2010" p2
WHERE p2.ROWID=1 AND
Touches (p1.Geometry, p2.Geometry)=1;

Estoy usando el spatialite-gui en un Mac.

3voto

neouser99 Puntos 1203

Sacar solo el p2. ROWID = 1, terminará con una lista completa. Puede lanzar una orden de hacer una lista mejor.

Edit: Lo sentimos, usted necesitará ajustar su salida, algo así como:

SELECT p1.ROWID, p1.ZCTA5CE10, p2.ZCTA5CE10 
FROM "US_zcta5_2010" p1, "US_zcta5_2010" p2 
WHERE Touches (p1.Geometry, p2.Geometry)=1;

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X