日期:2014-05-18  浏览次数:20561 次

怎样知道记录中有那些号漏了?
例如:
表A   ,serial   列:
ch001
ch002
ch003
.....
ch099
如果因为某某原因,中间有的单号断开了,怎样写语句就能找到其中的记录呢?

------解决方案--------------------
--try

declare @i int
set @i=1
create table #T(No char(5))

while @i <=99
begin
insert #T select 'ch '+right( '000 '+rtrim(@i), 3)
set @i=@i+1
end

select B.No from #T as B
where not exists(select 1 from A where serial=B.No)
------解决方案--------------------
感觉上面的方法就是建立一个数值连续的表,然后做比对.
还有别的办法么.