Esto es doloroso de hacer en MySQL por un par de razones. Primero, MySQL no tiene muy buen soporte para sumas acumulativas, que es lo que quieres comparar.
Y segundo, su conjunto de resultados es un poco débil. Tiene más sentido mostrar todos los ins
registros que contribuyen a cada outs
registro, no sólo uno de ellos.
Para este propósito, puede usar una unión en sumas acumuladas, que se ve así:
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)
Aquí es el violín SQL.