SSRS:如何在没有小数秒的情况下获得两个“datetime2”值之间的持续时间?

时间:2017-03-28 15:13:39

标签: sql reporting-services

我有两个值为“datetime2”数据类型。我希望我的报告显示“开始时间”,“结束时间”,“持续时间”。如果我简单地减去这两个值,我会收到一条警告,说“ - ”运算符对datetime2无效,输出看起来像“00:01:01.5000760”。

我可以使用DateDiff('s',starttime,endtime)来获取持续时间(以秒为单位)。然后我如何将其格式化为“dd:hh:mm:ss”进行显示?我想远离修改存储过程,希望所有这些都可以在表达式构建器中完成。

2 个答案:

答案 0 :(得分:0)

这样做:

=Floor(DateDiff(DateInterval.Second, Fields!StartTime.Value, Fields!EndTime.Value) / 86400) &":"& Format(DateAdd("s", DateDiff(DateInterval.Second, Fields!StartTime.Value, Fields!EndTime.Value), "00:00:00"), "HH:mm:ss")

您可以选择在末尾添加

 + " DD:HH:mm:ss"

答案 1 :(得分:-1)

右键单击该字段单元格,使用Expression函数选择FORMAT

如下所示:

= FORMAT(Field!col.Value, "dd:hh:mm:ss")