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

oracle 中某序列不完整、有缺失,怎么找出这些缺失的序列号并保存上来

2012-12-14 
oracle 中某序列不完整、有缺失,如何找出这些缺失的序列号并保存下来?oracle 中某序列不完整、有缺失,如何找

oracle 中某序列不完整、有缺失,如何找出这些缺失的序列号并保存下来?
oracle 中某序列不完整、有缺失,如何找出这些缺失的序列号并保存下来?
[解决办法]
用递归查询 connect by 号 = prior 号+1 

搜索连续号专题
[解决办法]


dex@ORCL> insert into t select level from dual connect by level <= 100 ;

100 rows created.

dex@ORCL> commit ;

Commit complete.

dex@ORCL> delete t where n in (1,10,14,16,17,20,30,50) ;

8 rows deleted.

dex@ORCL> commit ;

Commit complete.

dex@ORCL> select count(*) from t  ;

  COUNT(*)
----------
        92


加删个边界值
dex@ORCL> delete t where n = 100 ;

1 row deleted.

dex@ORCL> commit
  2  ;

Commit complete.

dex@ORCL> select count(*) from t  ;

  COUNT(*)
----------
        91
序列是什么形式的自己构造
dex@ORCL> with full_seq as
  2   (select level as numb from dual connect by level <= 100)
  3  select seq.numb
  4    from full_seq seq
  5   where seq.numb not in (select n from t)
  6   order by seq.numb;

      NUMB
----------
         1
        10
        14
        16
        17
        20
        30
        50
       100

9 rows selected.


[解决办法]
引用:
SQL code


dex@ORCL> insert into t select level from dual connect by level <= 100 ;

100 rows created.

dex@ORCL> commit ;

Commit complete.

dex@ORCL> delete t where n in (1,10,14,16,17,20……


真的谢谢你

热点排行