[FOSSGIS-Talk] Verketten oder zusammenführen von Attributen
Claas QGIS.de
claas at qgis.de
Di Feb 5 09:01:35 CET 2019
Hallo Jörg,
Es besteht im QGIS die Möglichkeit einen neuen Layer über eine
SQL-Abfrage herzustellen:
Verarbeitungs > Werkzeugkiste
Dort: QGIS-Geo-Algorithmen > Allgemeine Vektorwerkzeuge > SQL-Anweisung
Geometrietyp "keine Geometrie", wenn nur eine Tabelle erzeugt werden soll
Folgende SQL-Abfrage formulieren:
--------
select
flurstnummer,
group_concat(nutzungsart) as nutzungsart
from layername
group by flurstnummer
-------------
Mit group by fast Du alle Zeilen mit der gleichen Flurstücksnummer
zusammen. group_concat erzeugt eine Liste der der Nutzungen.
Alternativ kann dauch ein dynamischer virtueller Layer erzeugt werden:
Layer > Layer hinzufügen > vittueller Layer erzeugt werden.
Dort über die Schaltfläche import in den Layer importieren und
anschließend die vorher beschriebene Abfrage einfügen.
----------------------------------------
Du kannst auch die Geometrie in die Abfrage integrieren, dann hast Du
praktisch eine Dissolve-Funktion mit Attribut-Zusammenfassung:
--------
select
Gunion(geometry) as geometry,
flurstnummer,
group_concat(nutzungsart) as nutzungsart
from layername
group by flurstnummer
-------------
Dann muss natürlich vorher im Dialog eine Name für die Geometriespalte
angegeben werden. Wenn es sich um Shapefiles handelt, einfach geometry.
----------------------------
Das Ganze lässt sich auch über den Feldrechner und mit anschließendem
Dissolve in zwei Schritten umsetzen.:
Im Feldrechner neue Spalte "nu_list" anlegen und über folgende
Grupppierungsfunktion füllen:
concatenate( "nutzungsart" ,group_by:="flurstnummer")
In einem zweiten Schritt den Layer nach der Saplte "nu_list" verschmelzen:
QGIS-GeoAlgorithmen > Vektorgeometriewerkzeuge > Dissove
Viele Grüße,
Claas
--
------------------------
Claas Leiner
QGIS Anwendergruppe DE
Wilhelmshöher Allee 304 E
34131 Kassel
0561/56013445
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste