我在Microsoft Access表中没有自动编号的主键。 我很想知道在Sql Server中是否有与此查询相同的语法:
update top(2) [dbtest].[dbo].[myTable]
set ColA = ColA+13
where ColA = 5
此代码仅更新与“where”子句中指定的条件匹配的前两行(取决于您在TOP之后的paratheses中指定的内容)。
但是如果可能的话,我需要Access变体。谢谢!
答案 0 :(得分:1)
只要你在桌面上有一个主键,这应该有效:
UPDATE MyTable SET ColA = ColA + 13
WHERE PKField IN(SELECT TOP 2 PKField FROM MyTable WHERE ColA = 5)
注意:您可能需要在某处考虑Order By子句,以确保您更新相关的2条记录。