- 日志
- 好友
- 卖家信用
- 买家信用
- 注册时间
- 2010-11-23
- 在线时间
- 小时
|
发表于 2012-5-23 23:34:50
|
显示全部楼层
DROP TABLE IF EXISTS `test`.`biao`;
CREATE TABLE `test`.`biao` (`rownum` int,`shu` int);
INSERT INTO `test`.`biao`(`rownum`,`shu`)VALUES(1,2),(2,4),(3,5),(4,6),(5,3),(6,1);
SET @currentrownum:=1;
SELECT * FROM biao b;
SELECT shu - ifnull((SELECT shu FROM `test`.`biao` WHERE rownum=@currentrownum-1),0),
(@currentrownum:=@currentrownum+1)-1
FROM `test`.`biao`;
迷糊提示一种解法,不见得是最佳答案,
应该能够正常运行,执行结果请参考上面的图片
环境MySQL5.5
如果可以使用SQLSERVER等支持取得当前行的函数的数据库,解法会简单很多
推荐阅读:
http://blog.csdn.net/ACMAIN_CHM/article/details/4095531
|
|