我正在为IRS 1099创建一个B Record
列表(以防其他人熟悉该过程)。有两个标题记录(T Record and A Record)
,它们是文件的第一行,它们也需要行计数,所以当我创建B Record
时,我希望它从行开始数字3因为前两行是固定的,但是我无法在我的select语句中使用它。
- 填充行号
select right('00000000' ++ cast(row_number () over (order by column1) as varchar (10)),8)
- 结果
00000001
00000002
00000003
00000004
00000005
00000006
- 希望;
00000003
00000004
00000005
00000006
谢谢,
答案 0 :(得分:5)
您需要添加的表达式不是row_number()
。您需要添加的表达式为row_number () over (order by column1)
。
create table test (
column1 integer
);
insert into test values (1),(2),(3),(4),(5);
select right('00000000' + cast((row_number () over (order by column1)) + 2 as varchar (10)),8)
from test;