if exists (select * from sys.objects where name='tb_test')
drop table tb_test
go
create table tb_test
(
name nvarchar(20) not null,
date datetime not null
)
go
insert into tb_test values('gd550765','2009-08-14 16:02:07.293')
insert into tb_test values('gd550765','2009-08-14 16:19:41.000')
insert into tb_test values('gd550765','2009-08-14 16:06:01.530')
insert into tb_test values('gd75','2009-08-14 16:31:06.810')
insert into tb_test values('gd75','2009-08-14 16:31:12.483')
insert into tb_test values('gd77','2009-08-14 16:32:20.310')
insert into tb_test values('gd77','2009-08-14 16:32:37.640')
go
--用一条sql语句查出每个name最近的记录
select * from tb_test a where not exists(select 1 from tb_test where name=a.name and date>a.date)