192
Kapitel 13
Verwenden von Fensterrangfolge-, Offset- und Aggregatfunktionen
Das folgende Beispiel baut auf dem vorherigen Beispiel auf. Es wurde eine PAR-
TITION BY-Unterklausel zur OVER-Klausel hinzugefügt. Die ROW_NUMBER
kann dann jedes Resultset nach der LNr. getrennt nummerieren.
Beispiel:
SELECT
LNr AS 'Name des Lieferanten'
,ANr AS 'Artikelname'
,LMenge 'gelieferte Menge'
,ROW_NUMBER() OVER (PARTITION BY LNr ORDER BY LMenge DESC) AS 'ROW_
NUMBER'
FROM dbo.Lieferung;
go
Ergebnis:
Name des Lieferanten Artikelname gelieferte Menge ROW_NUMBER
-------------------- ----------- ---------------- --------------------
L01 A03 400 1
L01 A01 300 2
L01 A02 200 3
L01 A04 200 4
L01 A05 100 5
L01 A06 100 6
L02 A02 400 1
L02 A01 300 2 ...