字符串格式 s-s-rS 2008 的 dateTime 值的总和
Posted
技术标签:
【中文标题】字符串格式 s-s-rS 2008 的 dateTime 值的总和【英文标题】:Sum of dateTime values whose are in String format s-s-rS 2008 【发布时间】:2016-03-18 12:42:47 【问题描述】:我有一个从 SQL 查询以 dd:hh:mm 格式(日:小时:分钟)返回的时间变量。这个变量的设置是:
...
Time = cast(SUM(b.Time) / 1440 as varchar)
+ ':' +
RIGHT('0' + cast(SUM(b.Time)/ 60 % 24 as varchar),2)
+ ':' +
RIGHT('0' + cast(SUM(b.Time) % 60 as varchar),2),
...
所以每个数据都有自己的时间,我可以通过说 [时间] 在时间列下的 s-s-rs 中显示它。我的问题是我想添加每个数据的时间并显示 TotalTime 值。一个例子:
A ---- 00:02:20
B ---- 01:00:08
Total ---- 01:02:28
但是,Sum[Time] 在这里不起作用,因为时间值是字符串。在这种情况下,我怎样才能使总和取得进展,我找不到办法。如果有人提供帮助,我将不胜感激!
谢谢
【问题讨论】:
您可以从 s-s-rS 执行此操作。不要将 b.Time 字段转换为 varchar 并使用 s-s-rS 格式和 Sum 函数来计算和显示数据。 b.Time 列是什么数据类型? 它是整数,并保存一个与总分钟数匹配的值。例如,如果 Time = 600,则为 600 分钟 【参考方案1】:您可以编写一个公式来添加时间。首先将您的时间 (hh:mm:ss) 转换为秒,然后添加所有秒数,然后再次将总时间转换为 (hh:mm:ss) 格式。
【讨论】:
那是我做不到的。不知道在哪里以及如何做。 您可以通过右键单击报告单元格来转到表达式。 s-s-rstutorials.blogspot.in/2012/07/…【参考方案2】:在 s-s-rS 中使用此表达式来显示格式化的dd:HH:mm
分钟:
=FORMAT(FLOOR(Fields!Time.Value/1440),"00") & ":" &
FORMAT(FLOOR(Fields!Time.Value / 60 Mod 24),"00") & ":" &
FORMAT(FLOOR(Fields!Time.Value Mod 60),"00")
要获得总数,请使用以下表达式:
=FORMAT(FLOOR(Sum(Fields!Time.Value)/1440),"00") & ":" &
FORMAT(FLOOR(Sum(Fields!Time.Value) / 60 Mod 24),"00") & ":" &
FORMAT(FLOOR(Sum(Fields!Time.Value) Mod 60),"00")
在 tablix 中使用此数据排列:
你会得到这个:
假设您有一个包含分钟的 int 数据类型的字段。
如果这有帮助,请告诉我。
【讨论】:
以上是关于字符串格式 s-s-rS 2008 的 dateTime 值的总和的主要内容,如果未能解决你的问题,请参考以下文章
s-s-rS 2008 是不是支持导出为 .xlsx 格式而不是 .xls
从 s-s-rS 2008 R2 导出到 Excel 2010 时,数字不保持格式
s-s-rS 2008 - 导出为 pdf 时出现多个报告页面差异
在 s-s-rS 2008 中呈现 s-s-rS 2005 报告(如 .pdf)时,整个表被推送到下一页