gpt4 book ai didi

mdx - 如何从获取更高级别成员的所有后代的 MDX 调用中排除某个成员

转载 作者:行者123 更新时间:2023-12-03 23:24:10 36 4
gpt4 key购买 nike

在我使用的 OLAP 数据库中,有一个“位置”层次结构,包括公司 -> 区域 -> 区域 -> 站点 -> 房间。我正在使用以下 MDX 来获取公司级别特定成员的所有后代。

DESCENDANTS([Location].[Test Company],[Location].[Site], SELF_AND_BEFORE)

我现在需要从报告中排除名为“冗余”的特定区域。如何更改上述 MDX 以排除此特定区域(及其所有后代)?我知道这个区域将被称为“冗余”,但我不想硬编码任何其他区域名称,因为这些名称可能会改变。

最佳答案

EXCEPT 函数将接受一个集合,并删除您不想要的成员。在你的情况下,你需要说:

EXCEPT(
{DESCENDANTS([Location].[Test Company],[Location].[Site], SELF_AND_BEFORE)},
{DESCENDANTS([Location].[Whatever].[Redundant],[Location].[Site], SELF_AND_BEFORE)}
)

这为您提供了第一组中的所有内容,除了您在第二组中提到的内容。像这样更容易理解:
EXCEPT({the set i want}, {a set of members i dont want})

您不必担心第三个(可选)参数: http://msdn.microsoft.com/en-us/library/ms144900.aspx

关于mdx - 如何从获取更高级别成员的所有后代的 MDX 调用中排除某个成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/148875/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com