2017-05-17 10 views
0

Ich habe Polygone und Punkte. Jetzt möchte ich eine bestimmte Attributspalte der Punkte zusammenführen, wenn sie ein Polygon schneiden und dieses in einer neuen Spalte dem "Eltern" -Polygon hinzufügen.Update Polygon mit Werten von Punkten postgres/postgis

Die folgende Abfrage bereits funktioniert:

select polygons.id, (concat(string_agg(points.desc, '; '))) AS sum 
from polygons 
left join points 
on ST_Intersects(polygons.geom, points.geom) 
group by polygons.id; 

Aber wie die Polygone zu aktualisieren?

Dies funktioniert nicht:

update polygons set description = foo 
from (
select polygons.id, (concat(string_agg(points.desc, '; '))) 
from polygons 
left join points 
on ST_Intersects(polygons.geom, points.geom) 
group by polygons.id) as foo; 

Hoffentlich haben Sie ein paar Tipps ...

Antwort

0

Apologies für die einfache Frage. Das ist, wie es funktioniert:

update polygons 
set description = select(concat(string_agg(points.desc, '; '))) 
     from points 
     where ST_Intersects(points.geom, polygons.geom)); 

Problem gelöst ...

Verwandte Themen