[FOSSGIS-Talk] PostGIS Multipart to Singlepart
Claas Leiner
claas.leiner at gkg-kassel.de
Fr Jun 7 11:45:56 CEST 2019
Hallo Zusammen,
folgendes Problem bei einer PostGis-Abfrage sieht einfach aus, aber es
scheint nicht so einfach zu sein:
Ein Linienlayer mit ca. 800 Objekten soll nach einem Attribut "typ"
verschmolzen werden. Am Ende sollen jedoch nicht zusammenhängende
Linienteile des gleichen Typs als eigene Objekte erscheinen. Ziel ist
ein Singlepart-Layer, bei dem nur zusammenhängende Linienobjekte des
gleichen Typs verschmolzen sind.
Schritt 1:
-- Nach dem Attribut typ verschmelzen
create table trassen_zus as
select
st_Union(geometry)::geometry('Multilinestring',25832) as geometry,
typ
from trassen
group by typ
;
Jetzt habe ich für jeden Typ ein Multlinestring-Objekt. Es gibt so viele
Objekt wie Typen (8). Die Multi-Objekte verfügen jedoch über Teil-Linien
die im Gebiet verstreut sind. Jedes Teilobjekt, welches nicht mit einem
anderen zusamenhängt, soll nun ein einzelne Objekt werden. Also
Multipart zu Singelepart.
Schritt 2
Mit
create table trassen_zus_diff as
select
(ST_Dum(geometry)).geom::geometry('Linestring',25832) as geometry,
typ
from trassen
;
Bekomme ich jedoch die Ausgangsgeometrie zurück. Ich möchte aber für
jeden seperat liegenden Linienabschnitt mit identischem Typ eine
Singlepart-Geometrie bekommen.
Hat jemand mit dieser Problemstellung Erfahrungen und kann mir einen Tip
geben?
Viele Grüße,
Claas
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste