我正在构建我的第一个 SSAS 表格模型,并认为一切进展顺利,直到尝试通过 DateTime 创建度量。
在我的仓库中,我有一个 DIm_Time 维度,它有一个 DateTime 列,过去 2 年每 5 分钟有一行。5 分钟是我们需要的粒度。另外,表上有一个 TimeID Identity 列。在我的 ETL 中,我根据每个事实表的 5 分钟范围为每个事实表分配一个时间 ID。所以最终结果是 ID 上的 2 个表之间的关系,假设每个 TimeID 有 10 个事实。
现在我正在尝试对每个时间范围的行数进行简单的计数。例如,当前小时有多少事实。我发现的问题是,在测试我的度量时,我在 PowerBI 或 Excel 中都没有看到任何数据,而且我 90% 确信这与我的模型在计算度量时将我的 DateTime 过滤为日期有关。
Fcts by Date:=
CALCULATE ( COUNTA(Fct_Table[IDColumn]), Dim_Time[DateTime])
请有人帮我指出正确的方向,因为我正在努力寻找有关使用 DateTime 维度的任何内容。非常感谢。
我是,使用 SQL/SSAS 2017
通常,我将日期和时间保留在单独的维度中,因为这会降低整体基数,但即使您的日期维度具有时间元素,获取此值也不会有问题。下面的示例是在我自己的系统上编写的,并在 DAX Studio 中进行了测试:
为了在模型中完成这项工作,只需定义度量并包含它,如下所示:
然后,在发布模型后,您应该会在 DAX Studio、Power BI、Excel 或任何其他报告工具中看到它: