时间作为衡量标准

Jef*_*eff 6 aggregate ssas sql-server-2008-r2 mdx

是否可以将时间作为多维数据集中的度量?

我们正在尝试按天查看员工的上班时间,并汇总为一段时间内的平均值。即使使用No Aggregation度量类型,我在部署时也遇到错误,说StartTime是一个字符串值。它存储为time(7).

这是可能吗?想要做这件事似乎不是一件疯狂的事情?

我们使用的是 SQL Server 2008 R2 Enterprise。

Jef*_*eff 4

基本问题是SQL 类型time映射到stringSSAS 中。

所以我这样做的方式来自 JNK 的评论,所以所有的支持都是他的。

为了正确使用时间格式,我返回以下内容

(SELECT DATEDIFF(n, CAST('' AS Time), dbo.FactWorkDaySummary.StartTime) / 1440.0) AS StartTime

在我看来。

在我的多维数据集中,我有一个计算度量来适当计算平均值,并将 Format_String 属性设置为“短时间”。这是可行的,因为除以 1440.0 会将时间转换为浮点数,表示这些分钟所代表的一天的分数,即日期时间的表示形式。这也可以轻松地进行平均。

只需确保不显示日期,因为它是“30/12/1899”,这实际上并不适用。