Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

行与行之间差额计算

刘永  发表于:2014-10-17 11:43:33  
复制

 
能不能通过查询计算如此表的差额结果

 

Top
煮江品茶 发表于:2014-10-17 11:55:49

select *,数量-nz(dlookup("数量","阁下的数据表名称","产品图号='" & [产品图号] & "' and 序号>" & [序号]),[数量])  as 差额  

from  阁下的数据表名称



刘永 发表于:2014-10-17 12:08:13

这是在查询里直接编辑,还是在SQL编辑器里进行编辑

 



茼蒿 发表于:2014-10-17 12:19:48
煮江品茶 发表于:2014-10-18 10:47:46

在SQL编辑器中比较好处理。


更通用一些的写法是用子查询:

select a.*,数量-(select b.first(数量) from  阁下的数据表名称 as b where b.产品图号=a.产品图号 and b.序号>a.序号) as 差额
from  阁下的数据表名称 as a



朱先生 发表于:2014-10-18 11:28:14
点击下载此附件    这个可能简单点

刘永 发表于:2014-10-18 11:41:53

在序号断号的情况下,能不能通茼蒿老师的方法进行解决哪

 



我的ACCESS 发表于:2014-10-18 16:48:50

搞定

select a.*,iif(a.序号=1,0,(select nz(last(b.数量),0) from  表1 as b where b.产品图号=a.产品图号 and b.序号<a.序号 )-数量) as 差额aa
from  表1 as a




刘永 发表于:2014-10-25 11:55:10

行与行之间差额计算

计算结果出错,请各位帮忙调试一下



总记录:8篇  页次:1/1 9 1 :