设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[其它] [讨论][分享]求下一条记录与上一条记录的差值

[复制链接]
跳转到指定楼层
1#
发表于 2005-12-31 01:09:00 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
求某个字段下一条记录与上一条记录的差值.请诸位评评理,查询居然可以这样用.还有更简单的方法吗?
其中查询1是升序的,查询2是降序的.查询3是wuaza大侠提供的代码,

[此贴子已经被作者于2005-12-31 17:40:05编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2005-12-31 01:23:00 | 显示全部楼层
如果按降序排列,只要把那个<改为>就可以了.请看顶楼新增加的查询2.

[此贴子已经被作者于2005-12-31 5:34:08编辑过]

3#
 楼主| 发表于 2005-12-31 02:58:00 | 显示全部楼层
感谢!速度确实很快,但是有点小问题.请再想想办法.


[此贴子已经被作者于2005-12-30 18:59:14编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
 楼主| 发表于 2005-12-31 13:33:00 | 显示全部楼层
以下是引用wuaza在2005-12-30 20:57:00的发言:
select id,金额,金额 as 差额 from 表1 where id =1
union
SELECT a.id,a.金额,(a.金额-b.金额 ) as 差额 from 表1 as a,表1 as b where b.id = dmax("id","表1","id<" & a.id )

数据200条,等的心焦,增加到500条,几乎宕机.
5#
 楼主| 发表于 2006-1-1 01:38:00 | 显示全部楼层
要照顾到效率问题,就不能用楼主的方法来查询,改变一下思路,不求最简,只求最快,运行里面的宏就可以比较出来了.


[此贴子已经被作者于2005-12-31 18:57:19编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
 楼主| 发表于 2006-1-1 02:59:00 | 显示全部楼层
以下是引用wu8313在2005-12-31 18:52:00的发言:



版本高了,没法看。谢谢 sgrshh29 分享!

感谢您的提醒.9楼已经改为2000版本.
7#
 楼主| 发表于 2006-1-1 23:33:00 | 显示全部楼层
情版主可能忽略了一个细节,id是自动编号,如果删除了其中的某些记录,就不连号了.这样在断号的记录之间的差值就会发生错误.
8#
 楼主| 发表于 2006-1-2 00:12:00 | 显示全部楼层
以下是引用情比金坚在2006-1-1 15:36:00的发言:


还是我错了:改一下:这样的结果就和你的一致了,嘿嘿,连不连号没关系,顺序就行.

SELECT 表1.id, 表1.金额, [金额]-DLast("金额","表1","id<" & [id]) AS 差额
FROM 表1;

这个可能是最好的方法了,佩服.最好加上ORDER BY 表1.ID;

[此贴子已经被作者于2006-1-1 16:14:34编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-13 00:58 , Processed in 0.092761 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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