首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

搜索列里面的从1到100000中没有出现的数字!该怎么解决

2012-01-14 
搜索列里面的从1到100000中没有出现的数字!t1id1235...100000我想搜索这列里面的从1到100000中没有出现的

搜索列里面的从1到100000中没有出现的数字!
t1

id
1
2
3
5
...

100000


我想搜索这列里面的从1到100000中没有出现的数字,比如上面的缺少4,则查询结果中应该包含4

[解决办法]
declare @i int
set @i = 1

while @i <= 10000 begin
if not exists(select 1 from t1 where id = @i)
print rtrim(@i)
select @i = @i + 1
end;
[解决办法]
select top 100000 identity(int,1,1) as ID into #tp
from syscolumns a ,syscolumns b


select *
from t1
where id not in (select id from #tp)

drop table #tp

[解决办法]
select *
from t1
where id not in (select id from t2)

[解决办法]
我猜想楼主你的意图,可能是想在ID列查找未用的最小数值,然后把它赋给新记录作为唯一性键值吧?

热点排行