gpt4 book ai didi

ssas - 从集合中排除(全部)

转载 作者:行者123 更新时间:2023-12-04 02:10:13 25 4
gpt4 key购买 nike

我正在使用以下方法,但我认为可能有一种更简单的方法可以从结果中排除 All 成员?

WITH 
SET [Non_All_Distributors] AS
{FILTER(
[Distributor Name].members,
(InStr(1, [Distributor Name].CurrentMember.NAME, "All") = 0)
)}
SET [Non_All_Countries] AS
{FILTER(
[Geography Country].members,
(InStr(1, [Geography Country].CurrentMember.NAME, "All") = 0)
)}
SELECT
NON EMPTY
[Dimension].[Hierarchy].DEFAULTMEMBER
ON COLUMNS,

NON EMPTY
[Non_All_Distributors]
*
[Non_All_Countries]
*
Tail([Date].[Date - Calendar Month].[Calendar Day].Members,60)
*
{
[Measures].[Revenue],
[Measures].[NumClients]
}
ON ROWS

FROM [OURCUBE]

最佳答案

随便用

SELECT  
NON EMPTY
[Dimension].[Hierarchy].DEFAULTMEMBER
ON COLUMNS,

NON EMPTY
[dimension of Distributor Name].[Distributor Name].[Distributor Name].Members
*
[dimension of Geography Country].[Geography Country].[Geography Country].Members
*
Tail([Date].[Date - Calendar Month].[Calendar Day].Members,60)
*
{
[Measures].[Revenue],
[Measures].[NumClients]
}
ON ROWS

FROM [OURCUBE]

这里不需要定义集合。您可以在 rows 子句中直接说明经销商和国家成员。

通过重复属性名称,您将属性层次结构 - 您通过 [dim].[attrib name] 引用到 All 成员以下的级别,恰好再次与属性具有相同的名称。属性层次结构有两个级别:级别 0 包含“所有”成员,级别 1 包含属性的所有成员。 (仅当您没有进行特殊配置(例如将属性设置为不可聚合)时,这才是正确的,但我假设标准情况,因为您的层次结构中有 All 成员。

除了更简单之外,此语句运行速度也会更快,因为 Filter 在许多情况下是真正的性能 killer 。

关于ssas - 从集合中排除(全部),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18770045/

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