Использование SQL Server Management Studio. Хотелось бы вытащить месяц только из колонки. Были попытки следующее:Получить значение месяца от DateTime
ПОПЫТКИ 1:
,Convert (CHAR, e.TERM_DATE, 110) AS [Due Date]
,PAT_CASE.OLD_CASE_ID AS [Case Number]
,CASE
WHEN e.TERM_DATE = 'MM-DD-YYYY'
THEN DateName(MONTH, GETDATE())
ELSE e.TERM_DATE
END AS [MONTH]
Сообщение об ошибке:
Msg 241, Level 16, State 1, Line 1
Conversion failed when converting date and/or time from character string.
ПОПЫТКА 2:
,Convert (CHAR, e.TERM_DATE, 110) AS [Due Date]
,PAT_CASE.OLD_CASE_ID AS [Case Number]
,CASE
WHEN e.TERM_DATE = 'MM-DD-YYYY'
THEN DateName(month , DateAdd(month , @MonthNumber , -1))
ELSE e.TERM_DATE
END AS [MONTH]
ОШИБКА СООБЩЕНИЕ:
Msg 137, Level 15, State 2, Line 6
Must declare the scalar variable "@MonthNumber".
Msg 156, Level 15, State 1, Line 55
Incorrect syntax near the keyword 'AND'.
ПОПЫТКА 3:
,Convert (CHAR, e.TERM_DATE, 110) AS [Due Date]
,PAT_CASE.OLD_CASE_ID AS [Case Number]
,CASE
WHEN e.TERM_DATE = 'MM-DD-YYYY'
THEN SUBSTRING('JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC ', (@intMonth * 4) - 3, 3)
ELSE e.TERM_DATE
END AS [MONTH]
ОШИБКА СООБЩЕНИЕ:
Msg 137, Level 15, State 2, Line 6
Must declare the scalar variable "@intMonth".
Msg 156, Level 15, State 1, Line 55
Incorrect syntax near the keyword 'AND'.
Предполагая, что 'TERM_DATE' действительно в столбце даты и времени, вы пробовали самый очевидный:' МЕСЯЦ (TERM_DATE) ', если это номер месяца вы хотите? – jpw
Да и получить сообщение об ошибке: Ошибка конверсии при преобразовании даты и/или времени из символьной строки. – nfconn186