Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Beschränken Sie SQL auf die Summe des Zeilenwerts

Sie möchten eine laufende Summe hinzufügen und auf dieser Grundlage begrenzen, das Folgende sollte funktionieren:

SET @runtot:=0;
 SELECT 
    q1.t,
    q1.s,
    (@runtot := @runtot + q1.s) AS rt
 FROM 
    (SELECT Date AS t,
     SIZE AS s
     FROM  Table1
     ORDER  BY Date
     ) AS q1
WHERE @runtot + q1.s <= 20

Bearbeiten:Demo hier - SQL Fiddle