Rubrik: Datenbanken | VB-Versionen: VB2010 - VB2015 | 09.02.21 |
Spezielle SQL-Aktion - gruppenweise Nummerierung Im Tipp wird gezeigt, wie man mit speziellem SELECT eine Gruppennummerierung erzeugen kann. | ||
Autor: Dietrich Herrmann | Bewertung: | Views: 2.231 |
ohne Homepage | System: Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Ich zeige den Effekt am besten an einem Beispiel:
In der SQL-Tabelle befinden sich eine Anzahl Kundensätze, zu jeder mehrere Rechnungsnummern. Wenn man nun diese Sätze jeweils zum Kunden die Rechnungsnummern durchnummerieren möchte, kann man das mit folgender SELECT-Anweisung machen:
SELECT IDKunden, Rechnungsnummer, row_number() OVER (partition BY IDKunden ORDER BY IDKunden, Rechnungsnummer) AS Number FROM dbo.Rechnungen
Das Ergebnis sieht dann eventuell so aus:
IDKunden Rechnungsnummer Number 179 2885 1 179 2886 2 179 2903 3 179 2964 4 180 2924 1 180 2985 2 180 3036 3 181 3028 1 182 2950 1 183 2952 1 183 2988 2 183 3007 3