Ssas 如果parrent在MDX的另一年中缺席,则家长不包括孩子
我有数据Ssas 如果parrent在MDX的另一年中缺席,则家长不包括孩子,ssas,mdx,Ssas,Mdx,我有数据 parentid geo CustomerId Sales Year 171 A 171 10 2014 171 A 172 20 2015 171 A 172 30 2014 171 A 173 40 2014 质疑, SELECT NON EMPTY { [Measures].[Sales] } ON COLUMNS, NON EMPTY { ([DIMCustomer
parentid geo CustomerId Sales Year
171 A 171 10 2014
171 A 172 20 2015
171 A 172 30 2014
171 A 173 40 2014
质疑,
SELECT NON EMPTY { [Measures].[Sales] }
ON COLUMNS, NON EMPTY { ([DIMCustomer].[ParentGeoCode].[ParentGeolCode].ALLMEMBERS ) }
DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME
ON ROWS FROM
( SELECT ( { [DIMCustomer].[ParentSkId].[Level 02].allmembers } )
ON COLUMNS FROM ( SELECT ( { [DIMCustomer].[HierarchyCategory].&[Hierarchy] } )
ON COLUMNS FROM ( SELECT ( { [Year].[Year].&[2015], [Year].[Year].&[2014] } )
ON COLUMNS FROM [Cube])))
WHERE ( [Year].[Year].CurrentMember, [DIMCustomer].[HierarchyCategory].&[Hierarchy],
[DIMCustomer].[ParentSkId].[Level 02].allmembers)
输出-来自此查询的是10,但根据要求,如果我选择2014年和2015年,我需要100。请尝试从您的
WHERE
子句中提取[year].[year].[year].[All].[code>
顺便说一下:
1.不需要嵌套子选择,但如果使用其他轴,则子选择的可读性更高。
2.无需在子选择中包含任何类似的.allMemeber
函数[DIMCustomer].[ParentSkId].[Level 02]。所有成员
这是简化的脚本:
SELECT
NON EMPTY { [Measures].[Sales] } ON 0,
NON EMPTY { ([DIMCustomer].[ParentGeoCode].[ParentGeolCode].ALLMEMBERS ) } ON 1
FROM
(
SELECT
{ [DIMCustomer].[HierarchyCategory].&[Hierarchy] } ON 0,
{ [Year].[Year].&[2015], [Year].[Year].&[2014] } ON 1
FROM [Cube]
)
WHERE
(
[Year].[Year].[All],
[DIMCustomer].[HierarchyCategory].&[Hierarchy],
[DIMCustomer].[ParentSkId].[Level 02].allmembers
);