select distinct(username),[time] from dbo.SYS_REMINDER order by [time] desc
if object_id('tb') is not null drop table tb go create table tb(username nvarchar(200),time datetime) go insert into tb select 'user1' ,'2006-11-26 15:00:00' insert into tb select 'user1' ,'2006-10-12 03:00:00' insert into tb select 'user2' ,'2006-12-26 13:00:00' insert into tb select 'user2' ,'2006-12-26 23:00:00' insert into tb select 'user2' ,'2006-09-26 13:00:00' insert into tb select 'user3' ,'2006-10-26 23:00:00' insert into tb select 'user3' ,'2006-11-26 21:00:00' insert into tb select 'user3' ,'2006-11-26 10:00:00' goselect * from tbselect username,max(time) from tb group by username order by username
select top 1 * From table_name order by ABS(datediff(ss,time,getdate()))
select username,time from tb where time in (select top 1 time wehre username=tb.username order by time desc) group by username order by username
drop table tb
go
create table tb(username nvarchar(200),time datetime)
go
insert into tb select 'user1' ,'2006-11-26 15:00:00'
insert into tb select 'user1' ,'2006-10-12 03:00:00'
insert into tb select 'user2' ,'2006-12-26 13:00:00'
insert into tb select 'user2' ,'2006-12-26 23:00:00'
insert into tb select 'user2' ,'2006-09-26 13:00:00'
insert into tb select 'user3' ,'2006-10-26 23:00:00'
insert into tb select 'user3' ,'2006-11-26 21:00:00'
insert into tb select 'user3' ,'2006-11-26 10:00:00'
goselect * from tbselect username,max(time) from tb group by username order by username
order by ABS(datediff(ss,time,getdate()))
(select top 1 time wehre username=tb.username order by time desc)
group by username order by username