Hallo,
ich bin neu im Forum - Level: kein Profi, aber ambitionierter Autodidakt :)
Es geht um eine Tabelle mit Bohrprofilen, welche normalerweise von einer Applikation verwaltet wird. Sie enthält mehrere Spalten mit hierarchisch strukturieren Daten, welche korrekt zu sortieren sind, um die korrekte Schichtabfolge zu erhalten.
Die wesentlichen Sortier-Spalten sind:
Projekt-ID, Lokalitaet-ID, Interpraetations-ID, Layer-ID, Sublayer-ID, Schicht-Tiefe
Die Lokalitäts-ID einer Bohrung gehört zu genau einer Projekt-ID und kann mehrere Profil-Interpretationen (Interpretations-IDs) besitzen. Die Sortierreihenfolge ist also noch trivial: Projekt-ID, Lokalitaet-ID, Interpraetations-ID
Jedes Tupel aus (Projekt-ID, Lokalitaet-ID, Interpraetations-ID) besitzt eine Anzahl von Schichten mit ihren Teufen als nachfolgendes (vertikales) Sortierkriterium, wobei jede Schicht eine nicht sortierfähige Layer-ID besitzt.
Das eigentliche Sortierproblem tritt auf, weil jede Schicht mehrere Unterschichten enthalten kann, welche über die Sublayer-ID aufsteigend sortiert werden müssen und selbst hierarchisch an den nicht sortierbaren Layer-IDs hängen. Ich hoffe, das war halbwegs
verständlich.
Beispiel einer Bohrung mit korrekter Sortierung der Schichten:
p1 1 0 0 0 52
p1 1 0 3 0 31
p1 1 0 2 0 24
p1 1 0 2 1 NULL
p1 1 0 2 2 27
p1 1 0 2 3 NULL
p1 1 0 25 0 -21
p1 1 1 2 1 52
p1 1 1 1 0 44
p1 1 1 5 1 35
p1 1 1 17 0 25
p1 1 1 17 1 NULL
p1 1 1 17 3 NULL
Lässt sich das in Form einer komplexeren Abfrage abbilden oder muss man hier mit stored procedures oder ... arbeiten?
Vielen Dank für weiterführende Hinweise!