我有一个数据仓库,它是OLAP多维数据集的基础数据库。 当我运行这样的查询时:
SELECT dimS.Attribute2,SUM(fact.LastValue)
FROM FactTable fact
JOIN DimS dimS ON fact.DimSKey = DimS.DimSKey
GROUP BY DimSKey.Attribute2
我可以看到dimS表上所有现有的Attribute2在事实表中都有对应的行。
另一方面,我有一个计算得出的量度:
CREATE MEMBER CURRENTCUBE.[MEASURES].[MyMeasure]
AS ([Measures].[FactTable - LastValue]
, [DimS].[S Hierarchy].[All].[Hierarchy SomeName]
, [DimS].[Category].[All]
, [DimS].[Question].CurrentMember
, [CimC].[Status].&[Active]
),DISPLAY_FOLDER='Folder',VISIBLE = 1;
以及在MDX以下运行时:
SELECT
{ [Measures].[MyMeasure] } ON COLUMNS,
{ ([Survey].[Attribute2].ALLMEMBERS ) } ON ROWS
FROM [MyCube]
我看到Attribute2中的2个都没有赋值(空)。
什么会引起这样的问题(DimS和多维数据集已被完全处理)?
答案 0 :(得分:0)
找到根本原因。
在MDX定义中,所计算度量的参考为[DimS]。[S层次结构]。[全部]。[层次结构SomeName]是另一种已计算度量,其中实际上我们在维层次结构中具有硬编码值。对于[Attribute2],不满足此条件。