如何在oracle中生成这样的编码0001,0002

来源:互联网 发布:谷歌怎么安装js插件 编辑:程序博客网 时间:2024/05/18 06:27

首先建立一个1-9999的整数循环序列,

CREATE SEQUENCE DATE_SEQ 
START WITH 1 --起始值(默认为1可省略) 
INCREMENT BY 1 --可省略(默认为1可省略) 
MAXVALUE 9999 --最大值 
CYCLE --循环 
NOCACHE --不缓存(可避免产生值不连续的情况) 
ORDER --保证按次序产生值 

有了1-9999的循环序列,我们就可以 
TO_CHAR(DATE_SEQ.NEXTVAL)先将其转换为字符形式。

然后 
LPAD(TO_CHAR(DATE_SEQ.NEXTVAL),4,'0')对其进行4位加'0'补齐长度。例如2,补齐为0002。