Hallo nochmal,
mal eben versucht mit angepassten Tabellen und Spaltennamen diese
Abfrage auszuführen, wurde mit einer Fehlermeldung abgebrochen.
Aber wenigstens scheint das der richtige Weg zu sein. Danke für heute
Bernhard, morgen dann vielleicht mehr.
Gruß Peter
Am 17.06.2015 um 16:09 schrieb Bernhard Ströbl:
Hmnm,
wenn ich es richtig verstehe, hast Du z.B.
Tabelle1 (Ort)
id, ortname
Tabelle2 (zugehörige Objekte)
gid, geom, zuordnungs_id
zuordnungs_id ist ein Fremdschlüssel auf Tabelle1.id
Du möchtest nun im Atlasdruck für jedes Objekt aus Tabelle1 einen
Ausdruck machen und zwar derart, dass der Atlas über die Geometrien
aus Tabelle2 gesteuert wird(?): Alle Geometrien aus Tabelle2 mit der
selben id sollen zusammen sichtbar sein.
Vorgehen in diesem Fall:
Eine Sicht (oder einen SQL-Abfragelayer) machen
CREATE VIEW atlas_druck AS
SELECT t1.id,
ST_Union(t2.geom)::geometry(Multipolygon,srid) as geom
FROM tabelle1 t1
JOIN tabelle2 t2 ON t1.id = t2.zuordnungs_id
GROUP BY t1.id
ST_Union ist eine Aggregatfunktion, so wie count(), ich habe hier mal
Polygone angenommen, bei Punkten müsste es "Multipoint" sein,
ausserdem gehe ich davon aus, dass es immer mehrere Datensätze in
Tabelle2 für einen in Tabelle1 gibt, sonst mußt Du die einzelnen mit
ST_Multi() in Multi** verwandeln, damit der Datentyp des Ausgabefeldes
passt.
hoffe, das hilft
Bernhard
--
....................................................................
FOSSGIS und OpenStreetMap auf der Agit 2015 in Salzburg
8.-10. Juli, Universität Salzburg
http://www.agit.at
FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem
GIS-Bereich und Freier Geodaten!
http://www.fossgis.de/ https://twitter.com/fossgis_eV
____________________________________________________________________
FOSSGIS-Talk-Liste mailing list
[email protected]
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste