J'ai une base de données postgres avec les limites administratives et leur géométrie. Chacune de ces frontières a un numéro d'identification.
Ce que je veux réaliser:
Je veux d'abord sélectionner toutes les lignes qui commencent par un code postal particulier. Par exemple:
SELECT * FROM "post" WHERE "post"."ident" LIKE '101%'
Toutes les géométries adjacentes doivent être fusionnées et celles qui ne le sont pas doivent également être retournées.
J'ai essayé ces déclarations:
Celui que j'ai de cette réponse:
Joindre de nombreux petits polygones pour former un plus grand polygone à l'aide de PostGIS?
with t as (
select (st_dump(geom)).geom
from "post"
where "post"."ident" LIKE '593%'
) select ST_UNION(geom) from t;
Mais cette déclaration renvoie uniquement les polygones qui sont adjacents mais d'autres ne sont pas inclus
with t as (
select (st_dump(geom)).geom
from "post"
where "post"."ident" LIKE '593%'
) select ((ST_Dump(ST_UNION(geom)))) from t;
J'obtiens 2 lignes, et il semble que cela pourrait être ce que je veux, mais je ne peux pas obtenir le résultat sous la forme ST_AsText.
Existe-t-il une déclaration qui renvoie tous les polygones fusionnés si nécessaire et les renvoie idéalement sous la forme geoJSON ou peut-être sous forme de texte?
la source