may be this?SELECT *FROM(SELECT CustKey,TotalBalance - (SELECT SUM(balance) FROM table WHERE CustKey=t.CustKey AND TranDate> t.Latest AND balance< 0 ) AS outbalFROM(SELECT i.CustKey,SUM(i.balance) AS TotalBalance,MAX(i.TranDate) AS LatestFROM Invoice iINNER JOIN InvoiceDetails idON id.InvcKey = i.InvcKeyINNER JOIN Inventory invON inv.itemKey = id.itemKeyWHERE i.TranDate BETWEEN '1/1/2010' AND '1/15/2010'AND inv.itemType IN ('S','M','L')GROUP BY i.CustKey)t)rWHERE r.outbal >0 ------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/