PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Encontrando polígonos vizinhos - consulta postgis


Se você está perguntando como atualizar uma tabela com base em uma subconsulta que encontra apenas os polígonos que têm um vizinho (ou seja, eles tocam outro polígono), o seguinte deve funcionar para você.
Update gemstat_simple5 gem set spread=1, time=2
  FROM (
     SELECT (b."GEM_NR")
       FROM gemstat_simple5 as a,
            gemstat_simple5 as b
       WHERE ST_Touches(a.the_geom, b.the_geom) 
       AND a."GEM_NR" != b."GEM_NR"
       AND a.spread = 1
     ) as subquery
 WHERE gem."GEM_NR" = subquery."GEM_NR"

Observe que coloquei AND a."GEM_NR"