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

如何基于SEQNO列生成新序列?不修改原表新增查询列

按分组生成自增序列的SQL查询方案

你可以用SQL的**窗口函数ROW_NUMBER()**实现这个需求,无需修改原表,仅在查询时新增目标列即可。这个函数能按指定字段分组,对组内数据排序后生成从1开始的连续序号。

完整查询语句

假设你的表名为your_table,执行以下查询即可得到符合要求的结果:

SELECT 
    ID,
    SEQNO,
    ROW_NUMBER() OVER (PARTITION BY ID ORDER BY SEQNO) AS `Order`
FROM your_table;

关键参数说明

  • PARTITION BY ID:以ID作为分组依据,每个不同的ID会单独计算序列
  • ORDER BY SEQNO:在每个分组内部,按照SEQNO升序排列,确保最小的SEQNO对应序号1
  • ROW_NUMBER():为每个分组内的行生成从1开始的连续整数,完全匹配你需要的Order列效果

执行该查询后,返回结果与你提供的示例完全一致:

ID SEQNO Order
N1    4    1
N1    7    2
N1    11   3
N2    3    1
N2    5    2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 21:02:02