oracle中创建序列及序列补零实例详解

时间:2022-11-03 00:20:44

oracle中创建序列及序列补零实例详解

我们经常会在在DB中创建序列:

?
1
2
3
4
5
6
7
8
-- Create sequence
create sequence COMMON_SEQ
minvalue 1
maxvalue 999999999
start with 1
increment by 1
cache 20
cycle;

我们的序列的最小值是从1开始,但是我们想让这种顺序取出来的序列的位数都一样,按照最大数的位数来算,我们需要8位的序列,那么我们就需要在1的前面补上7个零,只需要用下面的方法即可完成

?
1
select to_char(sysdate,'yyyyMMddHH24miss') || replace(lpad(common_sql.nextval,8,'0'),'','0') from dual;

以上的函数lpad就是在左侧补零,rpad是右侧补零

整个sql还有其他部分,就是我们可以让序列以特定的开头展示,比如我们用年月日时分秒14位来作为我们序列的开头,就是上面完整的sql

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持 !

原文链接:http://blog.csdn.net/yusimiao/article/details/24957925