如何解决MDX错误的问题:“函数中指定的两个集具有不同的维度。”?

时间:2012-05-07 20:17:25

标签: sql-server-2008 mdx

WITH
SET TopCountry AS BOTTOMCOUNT( [Dimension Client].[Nazwa Firmy].MEMBERS, 3,      IIF(IsEmpty([Measures].[Fracht]), 0, [Measures].[Fracht]))
MEMBER [Order Count] AS (IIF(IsEmpty([Measures].[Facts Orders Count]), 0, [Measures].[Facts Orders Count]))

SELECT
[Order Count] ON COLUMNS,
TopCountry ON ROWS
FROM [N Wind PL2]
WHERE {
    ([Time].[Hierarchy].[Order Year].&[1997].&[1]),
    ([Time].[Hierarchy].[Order Year].&[1997].&[2]),
    ([Time].[Hierarchy].[Order Year].&[1997].&[3]),
    ([Dimension Client].[Kraj].&[USA]),
    ([Dimension Client].[Kraj].&[Meksyk])
}

我有错误,我在标题中写道,我在谷歌搜索它,解决方案对我来说是不可理解的。

2 个答案:

答案 0 :(得分:2)

看起来你的where子句中的括号和括号有点混淆了。尝试:

WHERE
    (
        {
            [Time].[Hierarchy].[Order Year].&[1997].&[1],
            [Time].[Hierarchy].[Order Year].&[1997].&[2],
            [Time].[Hierarchy].[Order Year].&[1997].&[3]
        },
        {
            [Dimension Client].[Kraj].&[USA],
            [Dimension Client].[Kraj].&[Meksyk]
        }
    )

答案 1 :(得分:0)

将层次结构放在一个大括号中,将维度放在一个大括号中