我正在创建一个名为“Deciles”的列。我需要根据行号的范围填充每个十分位数。所以'Decile 1'将在第1行和第364000行之间。我最近使用的语法没有用。请记住,我不是程序员。 (SQL Server 2008是我正在使用的环境)。 HELP !!
update dbo.August_Deciles
set Deciles = 'Decile 1'
Row_Number() over (Order By Row_Number())
between Row_Number(1) and Row_Number(326424)
答案 0 :(得分:0)
你可以试试这个CTE:
WITH CTE AS
(
SELECT Deciles,
RN = ROW_NUMBER() OVER (ORDER BY Deciles ASC)
FROM dbo.August_Deciles
)
UPDATE CTE SET Deciles = 'Decile ' + CAST(RN as int)
您应该使用有意义的订单替换ORDER BY Deciles ASC
。