我有无限循环,在其中我使用选择生成的列更新一列的整个值。当更新中的更改数为 0 时,我想打破循环。更新返回行数,所以我需要在更新之前和更新列之后进行比较。
问问题
57 次
2 回答
0
我认为您正在寻找这样的东西:-
WHILE(1)
BEGIN
-- Some logic here ---
UPDATE HumanResources.Employee
SET JobTitle = N'Executive'
WHERE NationalIDNumber = 123456789
IF @@ROWCOUNT = 0
BREAK
END
于 2013-05-30T10:34:28.857 回答
0
您可以使用@@ROWCOUNT
获取受 影响的行数UPDATE
。UPDATE
您可以通过为该子句提供一个WHERE
排除不需要更改的行的子句来获得实际不同的行数。例如:
UPDATE Tbl1
SET col1 = col2
WHERE col1 != col2
IF ( @@RowCount == 0) BREAK
于 2013-05-30T10:59:03.687 回答