Overvej at partition by
at ligne de felter, som du ville group by
, så, når partitionsværdierne ændres, genstarter vinduesfunktionen ved 1
EDITas angivet med a_horse_with_no_name, til dette behov har vi brug for dense_rank()
i modsætning til row_number()
rank()
eller dense_rank()
gentag de numre, den tildeler. row_number()
skal være en forskellig værdi for hver række i en partition. Forskellen mellem rank()
og dense_rank()
er sidstnævnte ikke "springer" tal over.
For din forespørgsel prøv:
dense_rank() over (partition by Username, Game order by ct."date") as "Attempts"
Du opdeler ikke efter, og bestiller efter, det samme felt i øvrigt; bare at bestille ved ville være tilstrækkeligt, hvis det var behovet. Det er her ikke.