PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Recherche de polygones voisins - requête postgis

Si vous demandez comment mettre à jour une table basée sur une sous-requête ne trouvant que les polygones qui ont un voisin (c'est-à-dire qu'ils touchent un autre polygone), alors ce qui suit devrait fonctionner pour vous.

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"

Remarque, j'ai mis AND a."GEM_NR"