PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Abfragetabelle mit Summe ALLER vorherigen Positionen, ohne aktuelle Position

Sieht so aus, als ob dies einfach mit Fensterfunktionen geschehen kann:

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;

Ich verstehe die Logik zur Berechnung der places nicht Spalte aber.