我想減去4個月,期間被定義爲年和月:減去4從一對一年中的月份/月值
UPDATE [MAS_YCA].[dbo].[temp_AR_SalesPersonhistory]
SET FiscalYear = year(DATEADD(month,-4,DATEADD(DAY,-1,DATEADD(month,cast(FiscalPeriod as Int),DATEADD(year,cast(FiscalYear as Int)-1900,0))))),
FiscalPeriod = right('00'+cast(month(DATEADD(month,-4,DATEADD(DAY,-1,DATEADD(month,cast(FiscalPeriod as Int),DATEADD(year,cast(FiscalYear as Int)-1900,0))))) as varchar),02)
GO
我得到的錯誤是Adding value to a datetime column caused an overflow.
的字段會計年度和期間都被定義爲datable中的varchar。
中有什麼fiscalyear和fiscalperiod列中的數據? – JodyT 2013-03-14 22:48:10
您需要顯示一些示例數據,因爲它不清楚「FiscalYear」和「FiscalPeriod」的外觀。你說他們是年份和月份'varchar'值,但是像前導零這樣的細節可能是個問題。爲什麼你將整數存儲爲'varchar'值? – Pondlife 2013-03-15 16:17:03