hallo an alle!
ich nutze oracle 10g und habe folgendes problem:
der befehl: SDO_AGGR_CONCAT_LINES,
beim versuch liniengeometrien zusammenzufassen funktioniert nicht richtig.
sachverhalt:
-2 tabellen
-tabelle1 beinhaltet linienobjekte.
-die objekte können aus einer oder mehrerer linien bestehen
-die geometrie jeder linie ist in tabelle2 gespeichert und über ein FK mit tabelle1 verbunden
Frage:
wie kann ich diese einzellinien zusammenfügen, sodass am ende jedes objekt genau einen geometrie eintrag besitzt?
die tabellen
tabelle1
fid (eindeutige id des objekts)
name (objektname)
kommentar (kommentar)
tabelle2
fid (eindeutige id jeder einzelnen linie)
fid_tabelle1 (fk = zuweisen der linie zu einem objekt)
geom (liniengeometrie)
Bsp für Liniengeometrie:
SDO_GEOMETRY(SDO_GTYPE(3002) SDO_SRID(24878) SDO_POINT(X(NULL) Y(NULL) Z(NULL) ) SDO_ELEM_INFO(1,2,1) SDO_ORDINATES(x,y,z,x,y,z ...)
select-befehl
SELECT t1.FID, (SELECT SDO_AGGR_CONCAT_LINES(t2.GEOM)
FROM tabelle2 t2
WHERE t2.FID_GEOGLYPH = t1.FID) as Geometrie
FROM tabelle t1
ergebnis:
FID = wird angezeigt
Geometrie = wird bei Objekten, bestehend aus einer Linie korrekt angezeigt
aber bei Objekten bestehend aus mehreren Linien wird eine leere zeile angezeigt.
ich weiß nicht wo der fehler liegt, ist das der falsche befehl?
brauche dringend hilfe! (
grüße agilrebo