如何将表中的相同ID号的第一条记录取出来
表:a
id name
11 aaaa
11 bbbb
11 cccc
22 dddd
22 eeee
22 ffff
如何将表中的相同id号的第一条记录取出来?即:
id name
11 aaaa
22 dddd
CREATE TABLE #a (
[id] [char] (10),
[name] [char] (10)
)
insert into #a(id,name) values('11','aaaa')
insert into #a(id,name) values('11','bbbb')
insert into #a(id,name) values('11','cccc')
insert into #a(id,name) values('22','dddd')
insert into #a(id,name) values('22','eeee')
insert into #a(id,name) values('22','ffff')
select * from #a b
where name=(select top 1 name from #a where id=b.id)
drop table #a
id name
---------- ----------
11 aaaa
22 dddd
(所影响的行数为 2 行)
CREATE TABLE #a (
[id] [char] (10),
[name] [char] (10)
)
insert into #a(id,name) values('11','aaaa')
insert into #a(id,name) values('11','bbbb')
insert into #a(id,name) values('11','cccc')
insert into #a(id,name) values('22','dddd')
insert into #a(id,name) values('22','eeee')
insert into #a(id,name) values('22','ffff')
select id1=identity(int,1,1),* into #t from #a
go
select id,name from #t where id1 in(select min(id1) from #t group by id)
drop table #a
drop table #t
id name
---------- ----------
11 aaaa
22 dddd
(所影响的行数为 2 行)