문자열 날짜/시간에서 년 (2009) 및 월 (12)을 구하고 정확한 전체 날짜를 제공하지만 잘못된 연도를 지정하는 방법 (1905-07-03 00:00 : 00.000) 및 월 (1900-01-13 00 : 00 : 00.000). 저는 YYYY를 MM으로, MM을 월로 바꿔 보았습니다.문자열을 datetime에서 년 및 월로 변환 SQL
Declare @date dateTime;
Declare @CurrentYear datetime;
Declare @CurrentMonth datetime;
Select @date = CONVERT (datetime , '20091231' ,112);
Select @CurrentYear = DATEPART(YYYY,@date);
--Select @CurrentYear = YEAR(@Date); <---- still wrong year
Select @CurrentMONTH = DATEPART(MM,@date);
--Select @CurrentMonth = MONTH(@date); <---- still wrong year
select @date as fulldate, @CurrentYear as [year], @CurrentMonth as [Month];
지금까지 아무 것도 제안되지 않았습니다.
관련 K
덕분에 ISO 8601을 사용하도록 코드를 변경했습니다. – TheOCD