使用postgres / postgis的值更新多边形

时间:2017-05-17 12:15:31

标签: postgresql postgis

我有多边形和点。现在我想合并点的一个特定属性列(如果它们与多边形相交)并将其添加到新的列中,以“父”多边形。

以下查询已经有效:

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;

希望你有一些提示......

1 个答案:

答案 0 :(得分:0)

为这个简单的问题道歉。多数民众赞成如何运作:

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

问题解决了......