2017-10-12 2 views
0

Gibt es eine Möglichkeit, eine row_number() Funktion zu schreiben, so dass die Spalte mit dem Titel (HELP HERE) erreicht werden kann? Ich möchte in der Lage sein, die Spalten a bis d in Buckets nach den Daten in Spalte d einzuordnen.Benutzerdefiniert ROW_NUMBER Funktion

a b c d (HELP HERE) 1603 82 117276 36 1 1603 82 117276 36 1 1603 82 117276 37 2 1603 82 117276 37 2

Wenn ich row_number() over (partition by a,b,c order by d) versuchen reagiert die Daten wie diese

a b c d (HELP HERE) 1603 82 117276 36 1 1603 82 117276 36 2 1603 82 117276 37 1 1603 82 117276 37 2

+1

'Rang()' oder 'DENSE_RANK() 'Fensterfunktion sollte es tun. Hier ist eine SO Frage, die den Unterschied erklärt: https://stackoverflow.com/questions/11183572/whats-the-difference-between-rank-and-dense-rank-functions-in-oracle – tommyO

+0

?? Wenn Sie row_number() versuchen, wie Sie es sehen, hat die Spalte HELP HERE die Werte 1, 2, 3, 4 - nicht 1, 2, 1, 2, wie Sie sehen. – mathguy

Antwort

3

try DENSE_RANK() über (Reihenfolge nach d)

+1

perfekt danke vielen Dank! – am340