날짜 입력에 관계없이 해당 월의 마지막 날을 반환하는 T-SQL 함수를 작성했습니다.TSQL은 월말 만 반환해야합니까, 년, 월 및 시간을 어떻게 내릴 수 있습니까?
다음SELECT dbo.fn_get_last_day_in_month (07-05-2010)
이 (잘못된) 결과 : 코드가 제대로 작동하지 않는
Alter Function dbo.FN_Get_Last_Day_in_Month2
(@FN_InputDt Datetime)
Returns smalldatetime
as
Begin
Declare @Result smalldatetime
Set @Result =
case when @FN_InputDt <> 01-01-1900 then
DATEADD(m, DATEDIFF(M, 0,@FN_InputDt)+1, -1)
Else 0 End
Return @Result
End
, 여기에 나쁜 행동을 보여줍니다 테스트는 다음과 같습니다
여기 내 코드입니다2010-07-31 00:00:00
왜 샘플 출력이 잘못 되었나요? 7 월 31 일이 아닌 이유는 무엇입니까? – Iridium