2013-03-12 6 views
0

В SSRS, как мне вернуть данные за предыдущий месяц за выбранный месяц. month(lis.s_date=month(getdate()) -1 предоставит мне данные за предыдущий месяц текущего месяца, но я хочу, чтобы это был предыдущий месяц любого месяца, выбранного в SSRS. Что бы я изменил getdate(), чтобы достичь этого?Как получить данные за предыдущий месяц из выбранного месяца

ответ

1

выражение эквивалентно SSRS будет:

=DateAdd(DateInterval.Month, -1, Now()) 

Редактировать после комментария:

Вы можете заменить любое значение даты в выражении T-SQL, например, несколько способов здесь:

create table dates (dateValue date) 

insert into dates select '01-jan-2013' 
insert into dates select '01-feb-2013' 
insert into dates select '15-feb-2013' 

select dateValue 
    , lastMonthDate = dateadd(mm, -1, dateValue) 
    , lastMonthValue = month(dateadd(mm, -1, dateValue)) 
    , lastMonthName = datename(mm, dateadd(mm, -1, dateValue)) 
from dates 

Это просто использует столбец таблицы вместо функции getdate().

SQL Fiddle demo.

+0

Будет ли эквивалент tsql «возвращать данные за предыдущий месяц любого выбранного месяца»? Я только нашел информацию о том, что делаю «предыдущий месяц текущего месяца», но ни один из них не был в предыдущем месяце какого-либо месяца. – user2146212

+0

Вам просто нужно использовать другое значение, чем 'getdate()', который всегда возвращает текущий день; Я показал несколько примеров выше. –

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