我有多边形和点。现在我想合并点的一个特定属性列(如果它们与多边形相交)并将其添加到新的列中,以“父”多边形。
以下查询已经有效:
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;
但是如何更新多边形?
这不起作用:
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;
希望你有一些提示......
答案 0 :(得分:0)
为这个简单的问题道歉。多数民众赞成如何运作:
update polygons
set description = select(concat(string_agg(points.desc, '; ')))
from points
where ST_Intersects(points.geom, polygons.geom));
问题解决了......