Você pode usar uma subconsulta correlacionada para obter o total em execução e recuperar as linhas cujo total em execução é
varchar
a comparação retornaria o resultado errado) select id,user_id,storage
from uploads t
where storage+coalesce((select sum(storage) from uploads
where storage<t.storage),0) < 410000
order by storage
SQL Fiddle
Editar:quando há valores duplicados na coluna de armazenamento, isso deve ser contabilizado na soma corrente, incluindo uma condição para o
id
coluna. (neste caso <
condição foi usada, então o menor id para um valor de armazenamento duplicado é selecionado) select id,user_id,storage
from uploads t
where storage+coalesce((select sum(storage) from uploads
where storage<t.storage
or (storage=t.storage and id < t.id)),0) < 410000
order by storage