SELECT t.ROWNUM,
t.ORDERID,
CASE WHEN prevtotal + t.BALANCEQUANTITY > @balance THEN (prevtotal + t.BALANCEQUANTITY) - @balance ELSE t.BALANCEQUANTITY END AS BALANCEQUANTITY
FROM table t
CROSS APPLY (SELECT SUM(BALANCEQUANTITY) AS prevtotal
FROM table
WHERE ROWNUM< t.ROWNUM
)t1
WHERE Prevtotal < @Balance
AND prevtotal + t.BALANCEQUANTITY >= @balance
------------------------------------------------------------------------------------------------------
SQL Server MVP
http://visakhm.blogspot.com/