Bin auf diese Frage gestoßen, als ich nach meiner eigenen Antwort gesucht habe. Ich dachte, ich würde meine Lösung hier lassen, da dies eine andere Möglichkeit ist, dieselbe Aufgabe zu erfüllen, und möglicherweise effizienter ist. Der Trick ist der Selbstbeitritt mit >=
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;