如何使用SSRS 2005将INT转换为HH:mm:ss

时间:2010-03-20 00:27:54

标签: sql reporting-services reportingservices-2005

好的我需要将从SQL 2005进入SRSS 2005的代理的总通话时间显示为INT。

对于我的生活,我无法弄清楚我需要使用的表达式编辑或格式编辑的组合。

对于我可以使用的细节部分:= DATEADD(“s”,SUM(Fields!Talk_Time.Value),CDate(“00:00”))

它将返回:1/1/0001 12:00:14 AM

现在我可以使用= LEFT(DATEADD(“s”,SUM(Fields!Talk_Time.Value),CDate(“00:00”)),8)

将返回:12:00:14

但我真正需要的是:00:00:14

请帮忙!

1 个答案:

答案 0 :(得分:5)

基本上你要回到12点钟时间,比如上午12点或“hh”格式,你需要24小时时间或“HH”格式。

您可以使用ToString()函数帮助您按照您希望的方式对其进行格式化...我将用14秒代替您的SUM(Fields!Talk_Time.Value)

=DATEADD("s", 14, CDate("00:00")).ToString("HH:mm:ss")

...返回0点00分14秒

或者说它更像是3小时(10,800秒)...

=DATEADD("s", 10800, CDate("00:00")).ToString("HH:mm:ss")

...返回3时00分00秒

如果没有LEFT或RIGHT,那就行了。

=DATEADD("s", SUM(Fields!Talk_Time.Value), CDate("00:00")).ToString("HH:mm:ss")