Доброе утро
У меня интересная ситуация:
1 июня 2018 года = 43252 как целое число
30 мая 2018 года = 43250 как целое число
Я пытаюсь преобразовать дату в первый соответствующий месяц (отчетный месяц) с помощью следующего кода:
DECLARE @InputDate DateTime, @Result Float, @Date DateTime
Set @InputDate = '2018/06/18 23:13:05'
If isDate(@InputDate) = 0
BEGIN
Set @Result = 0
END
ELSE
BEGIN
Set @Date = DATEFROMPARTS(Year(@InputDate), Month(@InputDate), 1)
Set @Result = cast (cast(@Date as datetime) as float)
Select @Date, @Result
END
Результат для @Date - «2018-06-01 00: 00: 00.000», как и ожидалось, но результат для @Result = 43250, то есть 30 мая 2018 года. Как это происходит?