数据库中怎样在一个字段内查询没有使用到的有哪些值?

2024-11-29 09:52:12
推荐回答(4个)
回答1:

当然可以了啊 这个很简单的。
假设 表明是 number 。主要的思路就是,在断层处有这样的数出现,就是有一个大于一个id,但是它跟着个id不连贯的。取出这样的数。 你这个问题是间断问题,缺失范围。 一般有两种情况,1,求出间断点。2,求出间断范围。(你要是想填充间断范围也可以)

表 和 列 都是number
1,求间断点
select number+1 from number a
where not exists (select 1 from number b where b.number=a.number+1)
and number<(select MAX(number) from number)

2,间断范围
select number+1 as range,(select MIN(number) from number b where b.number>a.number)-1 as endrange from number a
where not exists (select 1 from number b where b.number=a.number+1)
and number<(select MAX(number) from number)

回答2:

declare @tmp table{id int},@i int
set @i=100000
while(@i<=130000)
if not exitst select * from table where id=@i
begin
insert into @tmp (id) values(@id)
set @i=@i+1
end
select * from @tmp

回答3:

是需要显示出有ID号,但是name或者sex或者sfzhm字段有一个或多个是空值的情况吗?
SQL> select id from table_name where name is null or sex is null or sfzhm is null;

回答4:

是什么数据库?oracle的话,我会,其它的不会