Overweeg partition by
om vergelijkbaar te zijn met de velden die u zou group by
, dan, wanneer de partitiewaarden veranderen, start de vensterfunctie opnieuw op 1
EDITas aangegeven door a_horse_with_no_name, voor deze behoefte hebben we dense_rank()
nodig in tegenstelling tot row_number()
rank()
of dense_rank()
herhaal de nummers die het toewijst. row_number()
moet een andere waarde zijn voor elke rij in een partitie. Het verschil tussen rank()
en dense_rank()
is de laatste geen nummers "overslaan".
Probeer voor uw vraag:
dense_rank() over (partition by Username, Game order by ct."date") as "Attempts"
Je verdeelt trouwens niet op en sorteert op hetzelfde veld; gewoon bestellen door zou voldoende zijn als dat nodig was. Het is er niet.