大概要求是这样的正常的sequence.nextval查出来的值,
是1,2,3,4我想能否将查出来的值变为001,002,003...呢
是在sql里直接出来,不是通过java的再判断。谢谢

解决方案 »

  1.   

    是SQL试试这个
    case when nextval<9 then '00'||nextval
    else nextval end as 
      

  2.   

    -- 序列号的产生 
    create sequence row_id 
    minvalue 1 
    maxvalue 9999999999999999999999 
    start with 1 
    increment by 1 insert into test values('00'||row_id.nextval,....)  
    当前序列号row_id.currentval
    下一个序列号row_id.nextval
      

  3.   

    SELECT LPAD(123, 6, 0) FROM DUAL;
      

  4.   


    谢谢四楼的,按照这样,我写的sql是SELECT to_char(sysdate,'yyyymmdd')||LPAD(fix_num_seq.nextval,3,0) FROM DUAL我还有个问题,如果超过3位的话,比如1234,则会截取成123。
    我想问的是,如果超过3位,能改成避免这种截取的功能吗
      

  5.   


    如果那样你设置成3位是有问题的,一种办法就是改成更长的比如4位5位根据实际情况或者sequence设置为3位循环的