2013-03-20 2 views
4

Я использую версию SQL Server SSRS 2008, и мне нужно извлечь из поля даты значение месяца и года. Например, с 2013-01-11 21: 11: 29.340 Мне нужен отчет для отображения «Январь 2013»Извлечь месяц/год с даты в SSRS 2008

В представлении дизайна в ячейке, где я хочу отображать информацию, где опция «Выражение» из выпадающее меню, я положил

= DATENAME(MONTH, DesiredDate) & DATENAME(YEAR, DesiredDate) . 

И получил сообщение об ошибке.

BTW, «DesiredDate» происходит от кода SQL в конструкторе запросов.

+0

Какое сообщение об ошибке? – Taryn

+0

Сообщение об ошибке указывает на неправильный синтаксис – Joe

ответ

9

В SQL Server для конкатенации значений вы будете нуждаться в + между значениями:

DATENAME(MONTH, DesiredDate) +' '+ DATENAME(YEAR, DesiredDate) 

Вы, возможно, потребуется использовать &' '& который добавит пробелы между значениями:

DATENAME(MONTH, DesiredDate) &' '& DATENAME(YEAR, DesiredDate) 

Редактировать # 1, на основе вашего комментария, вы можете использовать следующее в окне «Выражение»:

=MonthName(Month(Fields!desireddate.Value)) &" "& Year(Fields!desireddate.Value) 

Примечание: Я только что протестировал это в SSRS 2008, и он вернул результат, который вы хотите.

+0

Привет, Bluefeet, знаете ли вы, что я мог бы добавить предлагаемый код в меню EXPRESSION в SSRS 2008? – Joe

+0

@Joe См. Мое редактирование, я только что протестировал версию, которая работала в SSRS 2008. – Taryn

+0

Спасибо. BTW, дата, в которой я нуждаюсь (это желаемое поле), объявляется как часть таблицы в коде SQL. Знаете ли вы, нужно ли мне определять его как параметр или переменную, чтобы иметь возможность использовать эту строку кода, предложенную выше? спасибо – Joe

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