我想根据每5条记录添加序列号。我的表格中有一些列:flag
,seq_no
和page_no
。
如果seq_no
等于1,2,3,4,5,page_no
将更新并设为1.
如果seq_no
等于6,7,8,9,10,page_no
将更新并设置为2,依此类推。
我正在使用SQL Server 2000。
我的代码如下,但错误:
--set page_no
Declare @page_number int
Declare @i int, @k int
set @i = 1
set @k = 1
while @k <= 5
begin
update dbo.test
set @page_number = page_no = case
when @k = 5 then (@i + 1)
else @i
end
where flag = 'right'
set @k = @k + 1
end
我该怎么办?请帮助我,非常感谢。
答案 0 :(得分:0)
您可以尝试以下方式:
UPDATE dbo.test
SET page_no = ((seq_no - 1) / 5) + 1
这会根据page_no
的值将seq_no
的值设置为您想要的值。