如何在SQL Server中更新前100条记录
- 论坛
- 如何在SQL Server中更新前100条记录
17 浏览
如何在SQL Server中更新前100条记录
我想在 SQL Server 中更新前 100 条记录。我有一个表 T1
,其中包含字段 F1
和 F2
。 T1
有 200 条记录。我想更新前 100 条记录中的 F1
字段。如何基于 SQL Server 中的 TOP 100
进行更新?
admin 更改状态以发布 2023年5月22日
匿名的
0 Comments
没有ORDER BY
,TOP
的整个概念就没有多少意义。你需要对"向上"和"向下"方向有一致的定义,才能使top的概念具有意义。
尽管如此,SQL Server允许它,但是不能保证确定性结果。
接受答案中的UPDATE TOP
语法不支持ORDER BY
子句,但是可以通过使用CTE或派生表来定义所需的排序顺序来获得确定的语义,如下所示。
;WITH CTE AS ( SELECT TOP 100 * FROM T1 ORDER BY F2 ) UPDATE CTE SET F1='foo'