>CREATE CURSOR curSource (dDate D , nValue I) >INSERT INTO curSource VALUES (DATE(2008,1,1),5) >INSERT INTO curSource VALUES (DATE(2008,1,10),3) > >* THIS IS THE SQL CORRECT SOLUTION, BUT VFP SQL is too limited >SELECT; > dDate; >, nValue - NVL((SELECT TOP 1 nValue FROM curSource WHERE dDate>X.dDate ORDER BY dDate),0); > FROM curSource X; > ORDER BY 1 > >* climbing on mirrors > SELECT; > X.dDate; >, X.nValue - NVL(X1.nValue,0); > FROM curSource X; > LEFT JOIN curSource X1 ON X1.dDate>X.dDate; > WHERE X1.dDate=(SELECT MIN(dDate) FROM curSource WHERE dDate>X.dDate) OR X1.dDate IS NULL; > ORDER BY 1 >