2013-05-30 31 views
-1

我有一個無限循環,其中使用select-generated列更新一列中的整個值。我想在更新次數爲0時打破循環。更新返回行數,所以我需要比較更新前和更新後的列。檢查UPDATE進行了多少更改

+3

「我有inifinte循環。」這是你的第一個問題。 –

+0

尋找@@ RowCount? – bummi

+0

@@ RowCount會給我多少行。需要無限循環,但我也有安全參數 – Button

回答

0

我認爲你正在尋找的東西是這樣的: -

WHILE(1) 
    BEGIN 
    -- Some logic here --- 
    UPDATE HumanResources.Employee 
    SET JobTitle = N'Executive' 
    WHERE NationalIDNumber = 123456789 
    IF @@ROWCOUNT = 0 
    BREAK 

    END 
0

您可以使用@@ROWCOUNT來獲得所影響UPDATE的行數。通過爲UPDATE子句提供排除不需要更改的行的WHERE子句,可以獲得實際上不同的行數。例如:

UPDATE Tbl1 
SET col1 = col2 
WHERE col1 != col2 

IF (@@RowCount == 0) BREAK 
相關問題