You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle中生成A1-Z9格式字母数字序列的实现方法求助

Oracle生成A1-Z9字母数字序列的简便方法

可以通过生成字母序列和数字序列的笛卡尔积来实现,逻辑更直观简洁:

SELECT CHR(64 + letter_level) || num_level AS sequence_val
FROM (
    -- 生成1-26,对应A-Z
    SELECT LEVEL AS letter_level 
    FROM dual 
    CONNECT BY LEVEL <= 26
) letters
-- 交叉连接生成1-9的数字序列
CROSS JOIN (
    SELECT LEVEL AS num_level 
    FROM dual 
    CONNECT BY LEVEL <=9
) numbers
-- 按字母、数字顺序排序
ORDER BY letter_level, num_level;

逻辑说明:

  • letters子查询生成1到26的整数,通过CHR(64 + letter_level)转换为A到Z的大写字母(ASCII码65对应A,64+1=65)。
  • numbers子查询生成1到9的整数,对应序列中的数字部分。
  • CROSS JOIN会将每个字母与每个数字逐一组合,直接得到A1-A9、B1-B9……Z9的完整序列。
  • 最后排序保证序列按字母顺序、数字顺序排列,符合需求。

内容的提问来源于stack exchange,提问作者Lakshmi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 23:24:50