求助:怎样获得多个相邻日期之间的差值

icaiduoduo 2009-05-12 11:22:19
例子:
张三 2008-1-23
张三 2008-2-1
张三 2008-4-1
张三 2008-5-1
李四 2003-3-12
李四 2003-3-15


希望得到的结果:
姓 相差天数
张三 9
张三 29
张三 30
李四 3

请大家帮忙看看用什么方法可以得到结果,谢谢
...全文
63 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2009-05-13
  • 打赏
  • 举报
回复

的确不是每个语句都去测试的。不过的确有错误,少了一个group by参数。

select a.tname,a.tdate-max(b.tdate) as 相差天数
from Table1 a ,Table1 b
where a.tdate>b.tdate and a.tname=b.tname
group by a.tname,a.tdate


QQ群 48866293 / 12035577 / 7440532 / 13666209
ACCESS专业论坛
http://www.accessbbs.cn/bbs/index.php .
http://www.office-cn.net/vvb/ .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
.
http://www.office-cn.net/home/space.php?uid=141646 .
wwwwb 2009-05-13
  • 打赏
  • 举报
回复
结果应该是:
adate xm n1 Expr1003
2003-3-12 李四 2003-3-15 3
2008-1-23 张三 2008-2-1 9
2008-2-1 张三 2008-4-1 60
2008-4-1 张三 2008-5-1 30
wwwwb 2009-05-13
  • 打赏
  • 举报
回复
不知道楼上测试过没有,
SELECT b.xm,b.adate,min(a.adate) as n1,datediff('d',b.adate,min(a.adate)) from ttg5 a left join ttg5 b on a.xm=b.xm and a.adate>b.adate
where b.adate is not null
group by b.xm,b.adate
ACMAIN_CHM 2009-05-12
  • 打赏
  • 举报
回复

select a.姓,a.tdate-max(b.tdate) as 相差天数
from yourTable a ,yourTable b
where a.tdate>b.tdate
group by a.姓





7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧