> Spalte1 Spalte2
>
> W_1 C_1
> C_1 C_2
> C_3 C_4
> C_2 C_5
>
W_1
C_1
C_2
C_5
------
C_3
C_4
> F�r bestimmte Zwecke (Pflege der Parent-Child-Hierarchien
> etc.) muss ich
> diese Tabelle in folgendes Format "transformieren":
>
> W_1 C_1 C_2 C_5
> C_3 C_4 Null Null
Sicher? Mir f�llt nicht wirklich was ein, was das erfordern w�rde... Und
das ist sehr aufwendig...
Wof�r brauchst du es in der Form? Vielleicht ist sie nicht n�tig...
>
> Bisher erledige ich das mit (n)JOINS wobei die Tabelle auf sich selbst
> referenziert. Dies geht gut, solange die Tiefe der
> Parent-Child-Hierarchien
> < 10 ist. Alles was dar�ber hinaus geht, laesst den
> SQL-Server endlos (> 5min) rechnen.
Ja klar... Weil du wahrscheinlich alles mehrfach bekommst...
Einen Pfad zu einem bestimmten Knoten, der 10 Knoten tief ist, bekommst
Du doch bestimmt (mindestens) 7 mal �berlappend, also:
C1 C2 C3 C4
C2 C3 C4 C5
...
C7 C8 C9 C10
Bei einem vollen Baum mit Tiefe 10 mit 1024 Blattknoten und insgesamt
2047 Knoten hast Du nach Deiner Methode
7168 Records in Deiner Ergebnisliste...
Wenn die letzten drei Werte null sein d�rfen, dann mehr als 10.000 ...
Obwohl 2000 reichen w�rde, um den Baum zu spezifizieren...
> Gibt es da evtl. einen anderen Ansatz. Hat hier jemand
> �hnliche Probleme?
Wenn der Baum in den Speicher passt, w�rde ich so ne Abfrage abschicken
Select knoten, parent from b�umen (where baum_id=123) order by knoten
Das ganze packst du dann in einen disconnected recordset und schliesst
die DB-Connection.
Da die records nach knoten sortiert sind, kannst Du jetzt sehr schnell
�ber die Filter-Property den Recordset auf die parents eines bestimmten
knotens einschr�nken:
RS.Filter = "knoten=234"
Claudius
~~~~~~~~~~~~~~~~~~~~~~~~~~~sponsored by United Planet~~~~~~~~~~~~~~~~~
Kaffeepause im United Planet Communityserver ...
http://www.intrexx.com/communityserver
_______________________________________________
Coffeehouse mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/coffeehouse