【发布时间】:2010-11-04 21:19:00
【问题描述】:
使用 Access 数据库
表格
Cardno name cardeventdate Intime Outtime
0001 Michael 20080811 102746 185249
0001 Michael 20080812 080828 080828
0002 Michael 20080811 082615 082615
0002 Michael 20080812 073624 190605
从上表中我想显示另外两列
Cardno、姓名、cardeventdate、Intime、Outtime、Yesterday cardeventdate(上一列日期)、Yesterday Outtime(上一列Outtime)
对于 Cardno – 0001
姓名 – 迈克尔
日期 – 20080811
银泰 – 102746
超时 – 185249
昨天日期 – 102746
昨天的休息时间 - 185249
例如,今天 Intime 是 090000,Outtime 是 180000 我想显示今天日期、时间、超时、上一个日期列、上一个超时列属于 Cardno
我的日期不是连续的,在我的数据库中日期是 20090601、20090508。所以我们不能放 date-1
正在使用子查询
预期输出
Cardno name cardeventdate Intime Outtime Yesterdaycardeventdate YesterdayOuttime
0001 Michael 20080811 102746 185249 20080810 175050
0001 Michael 20080812 080828 080828 20080811 185249
0002 Michael 20080811 082615 082615 20080810 192727
0002 Michael 20080812 073624 190605 20080811 082615
需要查询帮助?
【问题讨论】:
-
previous,你是指时间上的pervious,还是数据库中的前一行?当前的 CARDNO 或任何 CARDNO 是以前的吗?
-
在预期的输出中,您似乎没有按 CARDNO 或 CARDEVENTDATE 进行排序,所以我真的不明白这个输出的重点。能否说明一下业务需求?
-
是的,对于同一个 Cardno,它应该显示以前的记录。不要显示以前的记录,它应该显示该卡片的上一列日期和超时时间
标签: sql-server ms-access sql-server-2000