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

Tabella delle query con la somma di TUTTE le posizioni precedenti, esclusa la posizione corrente

Sembra che questo possa essere fatto facilmente usando le funzioni della finestra:

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;

Non capisco la logica per calcolare i places colonna però.