设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1134|回复: 6
打印 上一主题 下一主题

[Access本身] [求助]不用DSUM能实现吗

[复制链接]
跳转到指定楼层
1#
发表于 2007-4-13 17:56:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果要计算下面这样的效果,不用DSUM等实现吗

日期                金额               截止今日累计金额

2007-1-1          23                          23

2007-2-2          11                          34

2007-3-3           32                         65

就在总计查询里面能做到吗?也不使用自定义函数,请高手指教!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-4-13 18:11:00 | 只看该作者
请用"余额"关键字搜索一下旧贴
3#
 楼主| 发表于 2007-4-13 19:01:00 | 只看该作者
找到了一种

SELECT [1].ID, [1].借方, [1].贷方, (SELECT Sum([1].[借方]-[1].[贷方]) AS 余额 FROM 1 WHERE ([1].ID<=[1_1].ID)) AS 余额
FROM 1 INNER JOIN 1 AS 1_1 ON [1_1].ID = [1].ID;

这个方法比用DSUM和ADO的方法相对较快,但是排序的时候会产生重复!

有斑竹介绍每输入一个新的数据,就即时在一个表中的的字段生成余额的方法,这样是最快的,有着方面的例子吗?



[此贴子已经被作者于2007-4-13 11:19:54编辑过]

4#
发表于 2007-4-13 20:16:00 | 只看该作者
有斑竹介绍每输入一个新的数据,就即时在一个表中的的字段生成余额的方法,这样是最快的,有着方面的例子吗?

可以用DSUM将数据添加到累加字段,缺点是当前面的数据改变时,累加字段不会改变
5#
 楼主| 发表于 2007-4-13 23:05:00 | 只看该作者
是啊,除非不允许改变,靠冲减来解决,那就太不方便了。

用交叉表有用吗?我不熟悉



6#
发表于 2007-4-14 00:01:00 | 只看该作者
为什么要做那么多的限定?
7#
 楼主| 发表于 2007-4-14 00:29:00 | 只看该作者
不是有限定,而是希望速度快些。

我在论坛找了一些例子,然后用自己的数据库来测试(数据有一定量),发现确实用带D的函数速度很慢,要等几分钟的都有,而且查询的结果窗口不停刷新,电脑处于死机状态(P4配置)。用ADO要好些,但因为要反复调用查询结果,所以也是慢。我想只要用自定义函数,就要调用数据集,就不可避免要用到ADO。所以就只能想用普通查询直接实现,哪怕用多几个,也要快些。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-24 13:12 , Processed in 0.106502 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表