Рабочий пример:
DECLARE @StartDate DATETIME, @EndDate DATETIME
SET @StartDate = '2010-01-01 00:00:00.000'
SET @EndDate = DATEADD(m, 1, @StartDate)
SELECT @StartDate, @EndDate - 1
Обычно вы хотите взять дату начала, добавить один месяц (это то, что делает DATEADD
), а затем вычесть один день.
Вывод этого запроса:
StartOfMonth EndOfMonth
----------------------- -----------------------
2010-01-01 00:00:00.000 2010-01-31 00:00:00.000