如何在单个列中获取维度的所有成员
How do get all the members of a dimension in a single column
我想在单列的不同行中获取所有客户名称。
我在 MDX
中试过这个
WITH MEMBER ClientName
AS [Client].[Client].CURRENTMEMBER.NAME
SELECT {[ClientName]} ON 0
FROM [UserActivity]
这为我提供了一个名为 "ClientName" 行的列,其中包含 "All" 值。我想要的是此列中的多行,每个客户名称一行。我该怎么做?
最终,我想要开始工作的是这样的......其中每个客户名称显示在第 0 列中,相应的度量显示在第 1 列中
WITH MEMBER ClientName
AS [Client].[Client].CURRENTMEMBER.NAME
SELECT {([ClientName], [Measures].[Total Engaged Users])} ON 0
FROM [UserActivity]
现在我知道了,如果我将我的维度放在 ROWS 上,这会起作用,但我不想这样做,因为我正在使用的客户端应用程序不遵守这一点
SELECT {[Client].[Client].Members} ON 0, {[Measures].[Total Engaged Users]} ON 1
FROM [UserActivity]
您应该考虑使用 DESCENDANTS。如果您要查找的所有客户都是层次结构中的叶子,这将起作用:
DESCENDANTS ([Client].[Client].MEMBERS,,LEAVES)
要使函数 .CurrentMember
发挥作用,它需要上下文,因此您需要在行中包含 [Client].[Client].MEMBERS
:
WITH
MEMBER [Measures].ClientName AS
[Client].[Client].CurrentMember.Name
SELECT
{
[Measures].[ClientName]
,[Measures].[Total Engaged Users]
} ON 0
,[Client].[Client].MEMBERS ON 1
FROM [UserActivity];
如果客户端层次结构中有一些计算成员,那么 AllMembers
函数优于 Members
:
WITH
MEMBER [Measures].ClientName AS
[Client].[Client].CurrentMember.Name
SELECT
{
[Measures].[ClientName]
,[Measures].[Total Engaged Users]
} ON 0
,[Client].[Client].ALLMEMBERS ON 1
FROM [UserActivity];
我想在单列的不同行中获取所有客户名称。 我在 MDX
中试过这个WITH MEMBER ClientName
AS [Client].[Client].CURRENTMEMBER.NAME
SELECT {[ClientName]} ON 0
FROM [UserActivity]
这为我提供了一个名为 "ClientName" 行的列,其中包含 "All" 值。我想要的是此列中的多行,每个客户名称一行。我该怎么做?
最终,我想要开始工作的是这样的......其中每个客户名称显示在第 0 列中,相应的度量显示在第 1 列中
WITH MEMBER ClientName
AS [Client].[Client].CURRENTMEMBER.NAME
SELECT {([ClientName], [Measures].[Total Engaged Users])} ON 0
FROM [UserActivity]
现在我知道了,如果我将我的维度放在 ROWS 上,这会起作用,但我不想这样做,因为我正在使用的客户端应用程序不遵守这一点
SELECT {[Client].[Client].Members} ON 0, {[Measures].[Total Engaged Users]} ON 1
FROM [UserActivity]
您应该考虑使用 DESCENDANTS。如果您要查找的所有客户都是层次结构中的叶子,这将起作用:
DESCENDANTS ([Client].[Client].MEMBERS,,LEAVES)
要使函数 .CurrentMember
发挥作用,它需要上下文,因此您需要在行中包含 [Client].[Client].MEMBERS
:
WITH
MEMBER [Measures].ClientName AS
[Client].[Client].CurrentMember.Name
SELECT
{
[Measures].[ClientName]
,[Measures].[Total Engaged Users]
} ON 0
,[Client].[Client].MEMBERS ON 1
FROM [UserActivity];
如果客户端层次结构中有一些计算成员,那么 AllMembers
函数优于 Members
:
WITH
MEMBER [Measures].ClientName AS
[Client].[Client].CurrentMember.Name
SELECT
{
[Measures].[ClientName]
,[Measures].[Total Engaged Users]
} ON 0
,[Client].[Client].ALLMEMBERS ON 1
FROM [UserActivity];