Объединить несмежные полигоны в Qgis или Postgres

Я работаю с Qgis и PostgreSQL. Но я не могу понять, как объединить несмежные полигоны на моем скриншоте в одну запись? Кто-нибудь может мне помочь с этой проблемой?

Я хочу, чтобы все полигоны с одним и тем же котом были объединены в одну запись.

Смотрите скриншот здесь:

введите описание изображения здесь

Thnx

1 ответ

Решение

Если вы хотите использовать Postgres, вам нужно создать SELECT используя ST_Union

geometry ST_Union(geometry set g1field);

geometry ST_Union(geometry g1, geometry g2);

geometry ST_Union(geometry[] g1_array);

Вы можете попробовать это, чтобы создать один массив

Объединить несколько строк в массиве с SQL на 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;
Другие вопросы по тегам