如何使用 SQL Server 中的日期时间列在创建 SSRS 报告时实现以下行为?
使用 Microsoft Report Builder,双击报告表格中应包含您的日期的单元格。使用以下表达式将日期与日期时间列分开。
=DateAdd("d",DateDiff("d",Today(),Fields!DatetimeColumn.Value),Today())
这会计算
Today()
(没有时间的日期)和您的日期时间之间的天数。然后它从今天减去这个差异。这给您留下了一个没有时间信息的日期。
然后,在 Microsoft Report Builder 的列属性中,选择以下设置:
对于时间列,请使用以下表达式:
=Format(Fields!DatetimeColumn.Value,"HH:mm:ss")
并使用这些设置:
现在,如果您从 SSRS 将报告导出为 Excel 文件,您的列将如下所示:
当过滤器应用于列时,日期过滤器将如下所示:
时间过滤器将如下所示:
请记住以下几点:如果您在 Microsoft Report Builder 的选项卡中使用普通的
Fields!DatetimeColumn.Value
并将格式设置为包含时间的日期(例如屏幕截图中的 *2000/01/31 13:30),您将拥有一个可以像这样用日期和时间过滤的列。