Betrachten Sie partition by
den Feldern ähneln, nach denen Sie group by
würden , dann, wenn sich die Partitionswerte ändern, startet die Windowing-Funktion wieder bei 1
BEARBEITEN Wie durch a_horse_with_no_name angegeben, benötigen wir für diesen Bedarf dense_rank()
anders als row_number()
rank()
oder dense_rank()
Wiederholen Sie die Nummern, die es zuweist. row_number()
muss für jede Zeile in einer Partition ein anderer Wert sein. Der Unterschied zwischen rank()
und dense_rank()
letzteres "überspringt" keine Nummern.
Versuchen Sie für Ihre Abfrage:
dense_rank() over (partition by Username, Game order by ct."date") as "Attempts"
Sie partitionieren und sortieren übrigens nicht nach demselben Feld; Eine einfache Bestellung würde ausreichen, wenn dies erforderlich wäre. Es ist nicht hier.