如何根据某个字段数值N将一行数据拆成对应数值行数,新增的字段重新编号1-N进行编号

举例出差天数字段为3天,现在数据库里只有一条数据   开始时间,结束时间。

现在希望可以将这条数据 拆分3行数据,其他字段内容复制,新增一个代表行号 不断递增,如 1 2 3.

请求Finebi 如何实现这个需求。

有表tb, 如下:
id          N             B
----------- ----------- --------
1        3             A

欲按N,分拆行数, 分拆后结果如下:
id          N             B         N
----------- ----------- --------
1           3             A            1

1           3             A            2

1           3             A            3

FineBI 18006542626 发布于 2020-8-27 22:03 (编辑于 2020-8-27 22:12)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
yoobolLv5初级互助
发布于2020-8-28 08:38

Select rq

,dateadd(d,sv.number,rq) as riqi,

ROW_NUMBER() OVER(PARTITION BY rq ORDER BY rq desc) rn

From test a,master.dbo.spt_values AS sv 

Where sv.type='P' and sv.number Between 0 And num-1


  • 2关注人数
  • 403浏览人数
  • 最后回答于:2020-8-28 08:38
    请选择关闭问题的原因
    确定 取消
    返回顶部