合并Qgis或Postgres中的非相邻多边形

时间:2015-11-24 21:24:07

标签: postgresql merge postgis qgis

我正在使用Qgis和PostgreSQL。但我无法弄清楚如何将我的屏幕截图中的非相邻多边形合并到一个记录中?有人可以帮我解决这个问题吗?

我希望所有具有相同cat的多边形合并到一个记录中。

请参见此处的截图:

enter image description here

日Thnx

1 个答案:

答案 0 :(得分:1)

如果您想使用Postgres,则需要使用ST_Union

创建SELECT
geometry ST_Union(geometry set g1field);

geometry ST_Union(geometry g1, geometry g2);

geometry ST_Union(geometry[] g1_array);

您可以尝试创建一个数组

Concatenate multiple rows in an array with SQL on PostgreSQL

我在状态表中尝试这个并且正常工作

SELECT ST_Union(a_geom)
FROM  (SELECT  array_agg(e.geom) as a_geom 
       FROM mapas.estadosven_region e
      ) t

我做了另一个测试,看起来也可以这样做

SELECT ID, ST_Union(geom) 
FROM test_dissolve_function t 
WHERE ST_isValid(geom)='t' 
GROUP BY ID;