2016-08-30 5 views
0

Это моя просьба: основывается на Review Date, заполняет месяц в MM/DD/YYYY формате. Например. если Review Date - 17.08.2012, месяц обзора должен заполнить 1 августа 2012 года.SQL Server 2008R2: как преобразовать дату для столбца месяца?

Изначально у меня было закодировано

datename(month, c.CreatedDate) as 'Month' 

но запрашивающий теперь хочет его 8/1/2016 вместо «Август», независимо от дня месяца.

Спасибо

ответ

1

Вы можете использовать DateAdd и EOMONTH функции

dateadd(day, 1, eomonth(dateadd(month, -1, your_date))) 

EDITED

К сожалению, EOMONTH доступен, начиная с SQL Server 2012

select dateadd(day, -(datepart(day, your_date))+1, CONVERT(DATE, your_date, 101)) 
+0

Спасибо !!!! Это сработало. Мне просто нужно добавить часть конвертации. –

+0

формат даты, возвращаемый как yyyy-mm-dd вместо mm/dd/yyyy ... Я попробовал несколько конвертирования, и никто не возвращал формат, который мне нужен? –

+0

, если это просто для показа, вы можете использовать функцию FORMATMESSAGE выберите FORMATMESSAGE ('% i/1 /% i', datepart (month, your_date), datepart (year, your_date)) – fred

Смежные вопросы