Mysql
 sql >> Database >  >> RDS >> Mysql

Somma fino a un certo punto - MySql

Mi sono imbattuto in questa domanda mentre cercavo la mia risposta. Ho pensato di lasciare la mia soluzione qui poiché è un altro modo per svolgere lo stesso compito e potrebbe essere più efficiente. Il trucco è il self join usando >=

    SELECT s1.ID, s1.name, s1.money, sum(s2.money) as accumulator
    FROM student s1 
    INNER JOIN student s2 ON s1.id >= s2.id 
    GROUP BY s1.id HAVING accumulator <= 500;