sql >> Database teknologi >  >> RDS >> PostgreSQL

Forespørgselstabel med summen af ​​ALLE tidligere positioner, eksklusive nuværende position

Det ser ud til, at dette nemt kan gøres ved hjælp af vinduesfunktioner:

select id, date, position, name, 
       row_number(*) over (partition by name, date order by id) as races,
       count(*) filter (where position = 1) over (partition by name, date)  as wins
from the_table;

Jeg forstår ikke logikken i at beregne places kolonne dog.



  1. Opret felt med standard som epoketid

  2. Vis MySQL-resultater i en tabel uden at genindlæse siden

  3. Oracle .NET fejl - Forkert antal eller type argumenter

  4. MySQL, skal jeg forblive forbundet eller oprette forbindelse, når det er nødvendigt?