首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Oracle PL/SQL中生成AlphaNumeric序列

在Oracle PL/SQL中生成AlphaNumeric序列
EN

Stack Overflow用户
提问于 2020-02-18 23:39:00
回答 1查看 122关注 0票数 0

大家好,我想为唯一的主键创建一个序列,它应该从0000开始,并以1递增1,例如0001,0002。当数字字符在9结束时,下一个值应该是000A,下一个值应该是000B到000Z,然后下一个值应该是0010 (0011,0012等等)。我对oracle是个新手,我也不太懂怎么做,有人能帮我一下吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-19 07:24:20

得到了这个:

代码语言:javascript
复制
    CREATE OR REPLACE FUNCTION GENERA_ALFANUM (N INTEGER) RETURN VARCHAR2
     IS
      Q INTEGER;
      R VARCHAR2(4);
    BEGIN
      Q := N;
      WHILE Q >= 36 LOOP
         R := CHR(MOD(Q,36)+CASE WHEN MOD(Q,36) < 10 THEN 48 ELSE 55 END) || R;
         Q := FLOOR(Q/36);
      END LOOP;
      R := CHR(MOD(Q,36)+CASE WHEN MOD(Q,36) < 10 THEN 48 ELSE 55 END) || R;
      RETURN LPAD(R,4,'0');
    END;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60284530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档