我有一張表,我需要用-1遞增值。而不是增加發生,我所有更新列中得到-1。任何幫助表示讚賞。SQL Server 2005更新查詢不能正確遞增
UPDATE rpt_FYInfo
SET rptpddiff = rptpddiff - 1
WHERE rptpddiff =0 and UCI= 'BPA'
我有一張表,我需要用-1遞增值。而不是增加發生,我所有更新列中得到-1。任何幫助表示讚賞。SQL Server 2005更新查詢不能正確遞增
UPDATE rpt_FYInfo
SET rptpddiff = rptpddiff - 1
WHERE rptpddiff =0 and UCI= 'BPA'
,你要確保所有的rptpddiffs都是0,然後按1遞減他們好像你會希望它做的所有rptpddiffs除非你期待-1上所有的人。 (這是你怎麼做-1,-2,-3,-4)
UPDATE rpt_FYInfo
SET rptpddiff = rptpddiff - 1
WHERE UCI= 'BPA'
除非你想他們停止在0或什麼的,這種情況下只要改變你的邏輯相匹配。
要遞增,只需將您的邏輯更改爲,當然您可能想知道您正在更新的實體的某些內容,除非UCI是其主鍵或某物。
UPDATE rpt_FYInfo
SET rptpddiff = rptpddiff + 1
WHERE UCI= 'BPA'
你設置rptpddiff
在您的更新語句-1,其中,它的初始值是0
你是對的。如何更改rptpddiff,以便得到-1,-2,-3,-4,-5等等 – user2576682
是rptpddiff = 0的所有值? – Krishna
我有一個被稱爲rptpd主鍵。我修改了我的代碼以嘗試使用此字段。代碼仍然沒有正確遞增。 – user2576682
UPDATE rpt_FYInfo SET rptpddiff = rptpd - 378 WHERE rptpddiff = -1和UCI ='BPA' – user2576682