注册 登录
编程论坛 SQL Server论坛

[求助]SQL问题?

lengxie 发布于 2006-12-07 10:54, 553 次点击
假如有表A
有四个字段
d 字段是日期时间类型
a d
001 2004-08-12 12:06
001 2004-07-12 11:06
001 2004-09-12 19:06
002 2004-04-12 04:06
002 2004-09-12 09:06
002 2004-09-12 11:06
请问怎么按a分组,同时只要离现在时间最近的那条的记录,不知道说清楚没有,a不能重复时间要离现在最近
如:
a d
001 2004-09-12 19:06
002 2004-09-12 11:06

[此贴子已经被作者于2006-12-7 10:56:42编辑过]

6 回复
#2
lengxie2006-12-07 11:01
其实就是一件产品最后一道工序完成时间
#3
angeloc2006-12-07 11:35
你可以用top 和 order by 指令达到你想要的效果的,你自己写个看看吧。
#4
棉花糖ONE2006-12-07 12:30
declare @tmp table(id int ,d datetime)
insert @tmp values(1,getdate())
insert @tmp values(1,getdate()-1)
select * from @tmp where d in (select m from (select id,max(d) as m from @tmp group by id) a)
自己照着这个去修改一下
#5
lengxie2006-12-07 12:54
好的谢谢
#6
lengxie2006-12-07 13:26
请问一下这样写select id,max(d) as m from @tmp group by id
好象也能出来吧???

[此贴子已经被作者于2006-12-7 13:31:28编辑过]

#7
棉花糖ONE2006-12-07 13:51

对这样也能出来

1