更新表中的连续行

时间:2015-03-10 01:51:37

标签: sql sql-server sql-server-2008 tsql

如何更新表中的连续行数?

例如,一个Employee表包含数百行。

我必须更新行,只需71-85。

您可以清楚地将上面的内容视为表格的ID或行号。

2 个答案:

答案 0 :(得分:1)

使用RANK()

WITH C AS(
    SELECT RANK() OVER BY (ORDER BY IdField) AS Rnk,
           field1, field2
    FROM yourTable
)
UPDATE C
SET field1 = 'NewValue'
WHERE Rnk >= n
AND Rnk <= n+m

只是一个示例数据,因为您没有提供任何数据

答案 1 :(得分:0)

UPDATE MyTable 
SET foo = 'bar' 
WHERE id > 70 AND id < 86;