declare @num int; declare @count int; declare @result int = -1; set @num = 0 ; while @num <= 9 begin select @count = count(*) from table_1 a where a.a = @num if @count = 0 begin @result = @num; -- 如果没有数字,返回 break; end end
if @result = -1 begin -- 如果全不存在,返回最少的 -- 以a列进行分组,按数量进行排序,获取到的第一个值即是需要的重复次数最少的值 select @result = b.a from (select top 1 a.a,count(*) as count from tabel_1 a group by a.a order by count) b end追问