2016-12-06 4 views
1

Я хочу представить счетчик ID в столбце Daterange. Я попытался разбить его на ящики, но есть возможность разделить на несколько частей, а не на 3 разных значения даты. Я хочу разбить столбец «Диапазон дат» на 3 части, чтобы я мог представлять данные на гистограмме как «Ток», Pat и Future. Каждый из трех бункеров представлен как:Нужно выражение, чтобы разделить столбец DateRange на 3 ящика

1.Current - количество ID за текущий месяц [декабрь 2016]. Данные за текущий месяц должны быть рассчитаны на дунаймы, так как если в следующем месяце данные должны указывать на то, что с помощью динамического расчета

2.Past - количество идентификаторов для данных меньше, чем в текущем месяце [данные <, декабрь 2016]. Мне нужно иметь возможность динамически изменять количество месяцев с использованием пользовательского выражения, чтобы пользователь мог набирать несколько месяцев назад. Требуется выражение таким образом, чтобы его можно было настроить специальным выражением, если не можно изменить nos в выражении

3.Future - количество идентификаторов для данных больше, чем в текущем месяце [Data Dec 2016]. Мне нужно иметь возможность динамически изменять количество месяцев с использованием пользовательского выражения, чтобы пользователь мог в течение нескольких месяцев не мешать. Будут доступны будущие даты, поскольку это данные для манекенства, сделанные в будущем.

Эти 3 данные должны быть как пользовательские/закодированные столбцы, чтобы данные представлялись, как показано на прилагаемом рисунке. enter image description here

ответ

1

Вам просто нужно создать вычисляемый столбец ...

case 
    when DatePart('month',[DateColumn]) = DatePart('month',DateTimeNow()) and DatePart('year',[DateColumn]) = DatePart('year',DateTimeNow()) then "Current" 
    when [DateColumn] < DateTimeNow() and [DateColumn] >= DateAdd('month',${NumOfMonthsBack} * (-1),[DateColumn]) then "Past" 
    when [DateColumn] > DateTimeNow() and [DateColumn] <= DateAdd('month',${NumOfMonthsAhead},[DateColumn]) then "Future" 
end as [MonthRange] 
+0

'случай, когда DatePart ('месяц', [Диапазон дат]) = DatePart ('месяц', DateTimeNow()) и DatePart ('year', [Date Range]) = DatePart ('year', DateTimeNow()), затем «Current» , когда [Диапазон дат] DateTimeNow() затем «Будущее» end as [MonthRange] ' Будет ли логика выше для сценария без месячных nos, я сомневаюсь, что если« [Диапазон дат] direwolf

+1

Нет, вам придется кое-что проверить. Сначала, если месяц до текущего, если он в том же году. Если это не в том же году, то просто проверьте, год ли до текущего года. Это будет указано на будущие даты. I.e 1/14/2017 в будущем, но число месяца не опережает этот месяц, поэтому проверка года – scsimon

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