我有一个事实表说WhsFactJob
我们有CreatedTimeKey
和InProgressTimeKey
,我有一个衡量工作数量的指标。
我正在尝试创建一个计算度量,它会向我提取CreatedTimeKey
介于1(1:00 AM)
和2(2:00 AM)
之间的作业计数,而InProgressTimeKey
也会落在同一个{{ 1}}和1(1:00 AM)
。
我尝试使用2(2:00 AM)
和SUM
,但错误地说Except
必须使用相同的层次结构。(Except
和CreatedTimeKey
密钥是两个单独的维度。
任何建议都会有所帮助。
这是我正在尝试的MDX示例。
InprogressTime
答案 0 :(得分:1)
我认为你可以通过将每个集合交叉连接到另一个集合中的成员来摆脱异常:不确定查询的结果是否有用 - 目前我无法测试以下内容:
EXCEPT
函数中两组元组的维度现在应该是相同的:
WITH
MEMBER [Measures].[Sum] AS
SUM(
EXCEPT(
{[Created Time].[Hour].&[0]:[Created Time].[Hour].&[14]}
*[In Progress Time].[Hour].[Hour].MEMBERS
, [Created Time].[Hour].[Hour].MEMBERS
*{[In Progress Time].[Hour].&[0]:[In Progress Time].[Hour].&[14]}
)
,[Measures].[Job Count]
)
SELECT
[Measures].[Sum] ON 0
FROM [Cube];
答案 1 :(得分:1)
我不清楚你为什么要使用EXCEPT。怎么样:
SUM
(
CROSSJOIN(
{[Created Time].[Hour].&[0]:[Created Time].[Hour].&[14]},
{[In Progress Time].[Hour].&[0]:[In Progress Time].[Hour].&[14]}
)
,[Measures].[Job Count]
)