[英]MDX Query in pentaho CDE
我正在尝试创建一个OLAP选择器,该选择器包括返回的字段,还有一个包含其他字段总和的字段。 如何修改此MDX查询以解决此问题:
WITH
MEMBER [Measures].[Name] AS
[Year].CurrentMember.UniqueName
SELECT
Filter
(
{Descendants([Year].[All Years],[Year].[Year])}
,(NOT
IsEmpty([Year].CurrentMember))
) ON ROWS
,{[Measures].[Name]} ON COLUMNS
FROM [*My Table*];
我希望选择器显示...“ 2010”“ 2011”“ 2012”“ 2013”“ 2014”和“ ALL”
您应该可以将[All]成员添加到行中使用的集合中:
WITH
MEMBER [Measures].[Name] AS
[Year].CurrentMember.UniqueName
SELECT
{
[Year].[All Years]
,Filter
(
{Descendants([Year].[All Years],[Year].[Year])}
,(NOT
IsEmpty([Year].CurrentMember))
)
} ON ROWS
,{[Measures].[Name]} ON COLUMNS
FROM [*My Table*];
使用All成员的通用名称,并简化获取Year成员的方式:
WITH
MEMBER [Measures].[Name] AS
[Year].CurrentMember.UniqueName
SELECT
{
[Year].[All]
,Filter
(
[Year].[Year].MEMBERS
,(NOT
IsEmpty([Year].CurrentMember))
)
} ON ROWS
,{[Measures].[Name]} ON COLUMNS
FROM [*My Table*];
不清楚您的要求。 但是,如果您希望看到由DESCENDANTS
函数的输出得出的所有DESCENDANTS
,则可以尝试在计算所得成员中使用GENERATE
函数。
WITH MEMBER Measures.[Years] AS
GENERATE
(
Filter
(
{Descendants([Year].[All Years],[Year].[Year])}
,(NOT
IsEmpty([Year].CurrentMember))
)
,
[Year].[Year].currentmember.member_value
,
" "
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.