Oracle-SQL:生成循环复合序列

inv*_*ass 3 sql oracle plsql sequence

我想以下列格式生成复合序列:

<Alphabet><2 digit numeric code>
Run Code Online (Sandbox Code Playgroud)

每个字母系列的数值范围为00到99.

初始值为A00,后续值为A01,A02等.到达A99后,下一个序列应该继续B00.当"B"系列耗尽时,它将移动到C系列(即C00),依此类推.序列将继续,直到达到Z99 - 此时它将重置回A00.

如何在SQL(或PL/SQL)中完成?

gpe*_*che 7

就个人而言,我只存储一个NUMBER,然后动态计算"复合序列",例如:

select
chr(ascii('A') + ((number_sequence div 100) mod 26)) || to_char(number_sequence mod 100) composite_sequence,
...
from mytable

26假设英文字母,修改为您想要的字母表