2014-12-05 85 views
0

伙计们我在这里有个问题。我在SSRS 2008R2中有一个矩阵。我正在寻找一个将我的日期分组为时间(小时和秒)的表达式。我希望我的日期栏位在上午8:01 - 上午9:00,上午9:01 - 上午10:00等。SSRS表达式中的时间间隔

这里是理想的

Time   |COUNT 1| COUNT 2 | 
8:01-9:00am | 2 |  1 | 
9:01am-10:00am | 3 |  4 | 
10:01am-11:00am| 1 |  5 | 

什么是用得到这个工作的一部分时间的最好表达?

+0

你不清楚你想要什么?你能解释一下吗? – 2014-12-05 10:04:36

+0

上表是矩阵。行组是时间,而列组是计数。时间实际上是日期栏。我所要求的是用间隔格式(8:01-9:00)制作时间的最好的ssrs表达式,然后对它进行分组。合理? – Opstar1987 2014-12-05 11:52:18

+0

那你想按1小时的时间间隔做分组吗? – 2014-12-05 12:07:44

回答

0

我不知道是否有内置的方法是或不是,但你可以使用一个小技巧来实现你想要使用以下步骤

1的)在你的数据集添加计算字段

2 )将表达式设置为该字段以计算基于时间的值,就像它在09:01 - 10:00之间,然后在10:01-11:00然后是10:00之后将其设置为09:00等,等等。

3)然后,只需通过使用计算字段

这应该实现你想要的应用组。

1)添加在数据集计算字段

enter image description here

2)设置表达到该字段来计算时间的值基一样,如果它之间09:01 - 10:00然后将其设置09 :00如果10:01-11:00然后10:00等等等等。

=Replace(CStr(FormatDateTime(Fields!YourDateTime.Value,4)),Right(CStr(FormatDateTime(Fields!YourDateTime.Value,4)),2),"01") 

3)然后,只需通过使用计算出的字段

enter image description here

通过数据应用组之后应用该组是这样的。

如果你想要你也可以加总。 如有问题评论。

+0

你能给我举一个你正在谈论的表达的例子吗? – Opstar1987 2014-12-05 13:31:30

+0

看更新的答案.. – 2014-12-05 14:04:30

+0

我认为它越来越近了。你计算的字段只是假设所有的分钟都是“01”。我想要日期列中的实际分钟数。例如,你的第一行是12/15/2013 5:24:34 pm。我想计算的字段是17:34。这有意义吗?请告诉我,如果我错过了什么 – Opstar1987 2014-12-05 14:39:35