[FOSSGIS-Talk] QGIS: "Attribut nach Position verknüpfen" im Ausdruckseditor?

Claas Leiner claas.leiner at gkg-kassel.de
Mi Okt 25 18:19:42 CEST 2023


Hallo Günther,

das geht zum Beispiel mit der Funktion aggregate, mir der Du das 
Ergebnis einer räumlichen Abfrage direkt in die Attributtabelle 
schreiben kannst.

Wenn Du im BaumLayer mit dem Feldrechner die Abfrage:
aggregate(
	aggregate:=  'concatenate_unique',
	layer:=	     'flurstuecke',
	expression:= "lagebezeichnung",
	filter:=  intersects( $geometry, geometry(@parent))
	)
für eine Spalte Lage ausführst, wird die lage aus dem Layer flurstuecke 
geholt. $geometry gehört zum entfernten layer (also die Flurstücke). Mit 
geometry(@parent) bekommst Du die Geometrie des layer, auf dem Du die 
Abfrage durchführst.

Alternativ auch über overlay im BaumLayer:
  array_first(
	overlay_intersects(
	layer:=	'flurstuecke',
	expression:= "lagebezeichnung"		
				)
	)
Die Funktion overlay_intersects führt direkt eine räumliche Abfrage 
durch und ist schneller als aggregate mit räumlicher Filterung.
Gibt immer ein Array zurück, darum array_first(.

Wenn vom Polygonlayerräumlich ein Punktlayer abgefragt wird, kann es 
natürlich mehrere Ergebnisse geben.

Viele Grüße,

Claas
-- 
-----------------------------------------
GKG-Kassel - Dr.-Ing. Claas Leiner
QGIS-Support und mehr

Geodatenservice, Kartenwerkstatt &
GIS-Schule Kassel

Wilhelmshöher Allee 304 E
34131 Kassel
Tel. 0561/56013445
claas.leiner at gkg-kassel.de
----------------------------------------
http://www.gkg-kassel.de
----------------------------------------
Unterstützen Sie QGIS
QGIS-DE e.V. | http://qgis.de
QGIS Projekt | http://qgis.org/de/site/



Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste