我需要为我的主键创建一个包含 3 个字符和 4 个数字的字母数字序列。我尝试过谷歌搜索,但没有发现任何清晰或有用的东西。
那么,如何在 Oracle 中创建包含 3 个字符和 4 个数字的字母数字序列?
最佳答案
对于这样的序列没有开箱即用的支持。您可以使用 Oracle 表达式将数字序列转换为您所描述的内容。例如:
select a || b || c || last_4 from (
SELECT ROWNUM rn,
lpad(MOD (ROWNUM, 10000),4,'0') last_4,
CHR (MOD (FLOOR (ROWNUM / 10000), 26) + ASCII ('A')) c,
CHR (MOD (FLOOR (ROWNUM / (10000 * 26)), 26) + ASCII ('A')) b,
CHR (MOD (FLOOR (ROWNUM / (10000 * 26 * 26)), 26 * 26) + ASCII ('A')) a
FROM DUAL
CONNECT BY ROWNUM <= POWER (26, 3) * 10000
)
关于sql - 创建字母数字序列 Oracle SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40006025/