Dette er smertefuldt at gøre i MySQL af et par grunde. For det første har MySQL ikke særlig god støtte til kumulative summer, hvilket er det, du vil sammenligne.
Og for det andet er dit resultatsæt en lille smule svagt. Det giver mere mening at vise alle ins
poster, der bidrager til hver outs
optage, ikke kun én af dem.
Til dette formål kan du bruge en joinforbindelse på kumulative summer, som ser sådan ud:
select o.*, (o.to_quantity - o.quantity) as from_quantity,
i.*
from (select o.*,
(select sum(o2.quantity)
from outs o2
where o2.id <= o.id
) as to_quantity
from outs o
) o join
(select i.*,
(select sum(i2.quantity)
from ins i2
where i2.id <= i.id
) as to_quantity
from ins i
) i
on (o.to_quantity - o.quantity) < i.to_quantity and
o.to_quantity > (i.to_quantity - i.quantity)
Her er SQL Fiddle.