重复数据值只一条

 

--建立数据表createtable TestData
(
ID int identity(1,1primary key,
Data int,
ColA varchar(20),
ColB varchar(20)
)
go


--插入测试数据
declare @counts int
declare @i int
set @counts = 10000
set @i = 1

while @i<=@counts
begin
    insert TestData (Data,ColA,ColB) values(cast(rand()*10000 as int),cast(rand() as varchar(20)),cast(rand() as varchar(20)))    
    set @i=@i+1
end


--获取数据(重复数据只取一条)
select * from TestData 
where 
id in
(
--根据Data分类获取数据最小ID列表
select min(id) from TestData 
group by Data
)

原文地址:https://www.cnblogs.com/huangweiwei/p/2517556.html