Quantcast
Channel: Für Entwickler: SQL Server Forum
Viewing all articles
Browse latest Browse all 1772

Abfrage mit komplexer Sortierung

$
0
0

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:

Proj  Lok    Int    Layer    SubLay  Tiefe
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!


Viewing all articles
Browse latest Browse all 1772

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>