Вы можете попытаться получить другое число между 1900-01-01
и вашими данными, а затем выполнить некоторые вычисления, чтобы получить в прошлом месяце.
Запрос 1 :
SELECT DATEADD(month, DATEDIFF(month,0,'2019-01-01') - 1, 0)
UNION ALL
SELECT DATEADD(month, DATEDIFF(month,0,'2018-08-01') - 1, 0)
Результаты :
| |
|----------------------|
| 2018-12-01T00:00:00Z |
| 2018-07-01T00:00:00Z |
так что ваш запрос может быть
UPDATE Company_Coupon
SET Total_Coupons = @count
WHERE
CompanyID = 1205
AND
Month = MONTH(DATEADD(month, DATEDIFF(month,0,GETDATE()) - 1, 0))
AND
Year = YEAR (DATEADD(month, DATEDIFF(month,0,GETDATE()) - 1, 0))