设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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

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

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

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
19#
发表于 2006-1-2 10:15:00 | 只看该作者
ding
18#
发表于 2006-1-2 10:12:00 | 只看该作者
ding
17#
发表于 2006-1-2 05:50:00 | 只看该作者
我觉得使用dao或者ado方法可能更好一些。
16#
发表于 2006-1-2 05:35:00 | 只看该作者
我前面几个献丑了,大伙不要试,机器会算死的。呵呵~~

再来一个,速度稍好,但与情比金坚的没法比。

SELECT a.id, a.金额, a.金额-nz((select 金额 from 表1 where id=(select max(id) from 表1 where id<a.id)),0) AS 差额
FROM 表1 AS a;
15#
 楼主| 发表于 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编辑过]

14#
发表于 2006-1-1 23:36:00 | 只看该作者
还是我错了:改一下:这样的结果就和你的一致了,嘿嘿,连不连号没关系,顺序就行.

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


[此贴子已经被作者于2006-1-1 15:51:47编辑过]

13#
 楼主| 发表于 2006-1-1 23:33:00 | 只看该作者
情版主可能忽略了一个细节,id是自动编号,如果删除了其中的某些记录,就不连号了.这样在断号的记录之间的差值就会发生错误.
12#
发表于 2006-1-1 23:23:00 | 只看该作者
SELECT 表1.id, 表1.金额, DLookUp("金额","表1","id>" & [id])-[金额] AS 差额
FROM 表1;

这样算一霎那就出来了,怎么会说慢呢?域函数是效率很高的函数啊?
11#
 楼主| 发表于 2006-1-1 02:59:00 | 只看该作者
以下是引用wu8313在2005-12-31 18:52:00的发言:



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

感谢您的提醒.9楼已经改为2000版本.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-1 18:26 , Processed in 0.105552 second(s), 36 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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