Ssas 有没有办法指定每个单元格都应该使用MDX返回?

Ssas 有没有办法指定每个单元格都应该使用MDX返回?,ssas,mdx,Ssas,Mdx,我正在使用以下表单的查询: Select { ([Measures].[M1], [Time].[2000]), ([Measures].[M2], [Time].[2000]), ([Measures].[M1], [Time].[2001]), ([Measures].[M2], [Time].[2001]) } on 0 From [Cube] Where ([Some].[OtherStuff]) 使用AnalysisServices 2008。

我正在使用以下表单的查询:

Select {
    ([Measures].[M1], [Time].[2000]),
    ([Measures].[M2], [Time].[2000]),
    ([Measures].[M1], [Time].[2001]),
    ([Measures].[M2], [Time].[2001])
} on 0
From [Cube]
Where
    ([Some].[OtherStuff])
使用AnalysisServices 2008。即使我没有指定NON-EMPTY或类似的值,我仍然只返回三个单元格(其中一个为null)

我如何确保所有的单元格都被带回来-即使是空的单元格

其他想法: 上面的查询实际上不是我正在运行的查询(令人惊讶的是:)。真正的一个具有来自同一维度的两个层次结构,它们被指定为select的一部分,也被指定为where子句的一部分。我想知道这是否与此有关,但我想不出确切的原因

其他想法:
这似乎是AS2005/8中名为“自动存在”的功能。请查看上的相关部分。

您正在拉回不同的维度,这些维度飞得不太好。请尝试以下方法:

with 
member [Time].[Calendar].[CY2000] as 
    ([Time].[Calendar].[2000], [Time].[Fiscal].[All Time])

member [Time].[Calendar].[FY2001] as
    ([Time].[Calendar].[All Time], [Time].[Fiscal].[2001])

select
    {[Time].[Calendar].[CY2000], [Time].[Calendar].[FY2001]}*
    {[Measures].[M1], [Measures].[M2]}
on columns
from [Cube]
where
    {[Some].[OtherOtherStuff]}

这不是一个答案,但这应该有助于缩小问题的范围,这是一个在AdventureWorks中复制问题的查询

SELECT

{ ( [Date].[Calendar].[Date].&[1], [Date].[Fiscal].[Date].&[1129] ) } on 0

FROM [Adventure Works]
我希望这会返回指定的元组和Null,但不会检索任何元组


我认为这是因为元组位于同一维度的两个层次结构上,没有公共性。

也尝试过。。。它不起作用。用我的一些想法更新这个问题…顺便说一句,感谢交叉连接的建议-我在编写假装查询时没有想到这一点。真的没有机会:)太棒了。谢谢你!我想知道是否有更简单的方法:/请发布准确的查询,以便我们能更好地帮助您。此外,我已经将这一点考虑在内,修改了我的答案。泰罗曼发布的查询正好显示了我所说的问题。