【问题标题】:How to add member name in MDX query如何在 MDX 查询中添加成员名称
【发布时间】:2023-04-04 22:23:01
【问题描述】:

我刚刚开始使用 OLAP 多维数据集。我对 MDX 查询有一些疑问。我有一个类似的查询:

WITH 
MEMBER [Balance].[NegEXPENSE] AS '-[Balance].[Type].[EXPENSE]' 
SET BalanceTypeSet AS {[Balance].[Type].[INCOME], [Balance].[NegEXPENSE]} 
MEMBER [Balance].[TypeSum] AS AGGREGATE(BalanceTypeSet) 
SELECT {Measures.[Sum]} ON COLUMNS, 
{[Balance].[Type].[INCOME], [Balance].[Type].[EXPENSE], [Balance].[TypeSum]} ON ROWS 
FROM [Balance Cube]

这个查询的结果如下:

RESULT

此结果没有最后一行的名称 (TypeSum)。如何为 TypeSum 添加名称?

谢谢。

【问题讨论】:

    标签: mdx olap olap4j


    【解决方案1】:

    你需要添加计算维度成员,试试这个:

    WITH 
    
    MEMBER [Balance].[Type].[TypeSum] AS AGGREGATE(BalanceTypeSet) 
    
    SELECT {[Measures].[Sum]} ON COLUMNS, 
    {[Balance].[Type]} ON ROWS 
    FROM [Balance Cube]
    

    【讨论】:

    • 感谢您的回答,但此查询无效。我有一个例外,即“蒙德里安错误:内部错误:'[Balance].[All]' 计算成员不能用作另一个计算成员的父级。”。
    • 尝试更新。从未使用过 Mondrian,仅使用 SSAS,使用计算维度成员是非常典型的场景。
    • 我在包含多维数据集的 schema.xml 文件中添加了一个计算维度成员。此计算维度成员是 [Balance].[Type].[EXPENSE] 的负数。当我将此成员添加到我的查询时,我没有出现异常,但计算出的成员名称确实从结果中返回。
    • 是的,我尝试使用此查询查看所有成员:SELECT {Measures.[Sum]} ON COLUMNS, {[Balance].Members} ON ROWS FROM [Balance Cube],然后在结果中没有看到计算出的维度成员。
    • 有AllMembers功能吗?在 SSAS Member 中不会返回计算维度成员,而 AllMember 会。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    • 2013-05-31
    • 1970-01-01
    • 2022-06-27
    相关资源
    最近更新 更多