Пример: данные моей таблицы базы данных - 201201, которые я хочу отобразить как 2012 ДЕКАБРЬ. Пожалуйста, посоветуйте мне. SQL 2005 Environment.Как преобразовать определенную строку в месяц Имя
ответ
Как насчет этого?
DECLARE @DT DATETIME
SET @DT = CONVERT(DATETIME,'201201' + '01')
SELECT CAST(YEAR(@DT) AS VARCHAR(4)) + ' ' + DATENAME(MM, @DT) AS [Month YYYY]
зачем нужно добавить '01' для CONVERT (DATETIME, '201201' + '01')? Не понимаю –
Да, чтобы преобразовать DATETIME, строка должна быть полной строкой даты YYYYMMDD, вот почему Добавлен «01». –
+1 Я думаю, вы могли бы сократить это немного, если бы использовали DATENAME за год, а также избегали 'cast as varchar (4)'. –
возможно дубликат [Преобразовать номер месяца в месяц Название функции в SQL] (http://stackoverflow.com/questions/185520/convert-month-number-to-month-name-function-in-sql) –
как «201201» стал 2012 ДЕКАБРЬ? –
Должно быть, 2012 ЯНВАРЬ ??? –