請問下大神,在一張表A中 ,有連續幾個月的資料,imonth是表中的月份, 現在想要取F1這個欄位上個月的資料,如果現在是8月份,想要取7月份F1資料填到F2中,這個陳述句要怎么寫?如果是要寫成觸發器,每個月在該表修改的時候自動觸發要怎么寫?
uj5u.com熱心網友回復:
你這個inmonth欄位里資料的格式是怎樣的,如果是202007這樣的格式,那用下面的試試UPDATE A
SET F2=F1
WHERE imonth=CONVERT(VARCHAR(6),DATEADD(MONTH,-1,GETDATE()),112)
話說你這個沒必要用觸發器吧,設定個定時作業,每月指定日期批量更新一次。
uj5u.com熱心網友回復:
這個imonth在后臺顯示出來的是1 2 這種數字的,資料型別是tinyint 這個不能設定定時的 因為有可能隨便會進表修改,每次修改都需要重新計算這個欄位uj5u.com熱心網友回復:
UPDATE A
SET F2=F1
WHERE imonth=MONTH(DATEADD(MONTH,-1,GETDATE()))
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/14528.html
標籤:疑難問題
上一篇:求來個大佬看一下吧,實在不會了
