我有一個序列,我需要使用重新計算主鍵中的兩個字段,如果沒有找到更新匹配。是否可以在這裏繼續使用MERGE語句?我嘗試了什麼時候開始比賽,但是BEGIN在這裏無效。當不匹配時有多個步驟可能?
具體來說,我有一對組成主鍵的數字。第一個是分組,第二個是組內的一系列項目。如果出現問題,該組進入99990,我需要將它與序列結合起來,並使用一個序列來增加,然後將其分開。所以,當組進來99990時,我的計算組可以從99990到99999的範圍內,然後序列號的範圍從00到99.
我想不出一種方法來做到這一點INSERT賦值,並且我無法弄清楚如何使MERGE執行多個步驟,所以我猜我回到了UPDATE,IF @@ ROWCOUNT = 0 BEGIN。任何人都有更快的方法來做到這一點?
您正在使用哪些DBMS?用'@@ rowcount'來判斷可能是SQL Server? –
就像你猜測的那樣,它就是SQL Server。 – knockNrod