问题
If I create a set of tuples via the following crossjoin which hierarchy is joined to which first?
hierA * hierB * hierC
If I know that the count of non empty members in A and B are significantly less than the count of members in C then should this influence the order?
回答1:
It depends on the execution system used, i.e. how crossjoining on axis is optimized by compiler.
Anyway, you will get real boost only if you first reduce cube size with subselect - it will prevent crossjoining non-matching points:
select
{ [Measures].[X] } on 0,
{ [DimA].[A] * [DimB].[B] } on 1
From (
select { [DimB].[B].members} on 0
from CubeA
)
来源:https://stackoverflow.com/questions/28098346/execution-order-of-crossjoined-hierarchies