2017-03-20 40 views
0

在多維數據集中我想根據特定維度和時間段獲取度量的平均值,但即使應用總和也返回相同的結果,平均或直接採取測量值,相同的查詢如果我運行SQL它返回43行,但在MDX查詢它只返回1行。如立方體聚集度量值查詢在SQL是MDX作爲在多維數據集中我想獲得基於特定維度和時間段的度量的平均值

select Measure,[Dimension Name] from datatable where dimension1key=1 and countryKey=2 and regionKey=1 and channelKey=3 and timeperiod between(38,50) groupBy [Dimension Name],Measure 

相同的,如果我寫

select {[Measure].[price] } on columns,non empty({[Dimension].[Dimanesion Name]}) on rows from (select {[Dimcountry].[country Name].[asia]} on columns from (select {[Dimchannel].[channel Name].[a]} on columns from (select [dimension1].[Dimension1Key].[1]} on columns from (select {[region].[region Name].[abc]} on columns from retaoauditcube)))) 

只返回一個行作爲聚集值

回答

1

您可以使用MDX AVG功能:

With 
Member [Measure].[AVG Price] as 
AVG(
    [Date].[Calendar].[Day].Members, 
    [Measure].[Price] 
) 

Select 
{[Measure].[Price],[Measure].[AVG Price]} on 0, 
Non Empty [Dimension].[Hierarchy].[Attribute].Members on 1 
From [retaoauditcube] 
Where ([Dimcountry].[country Name].[asia],[Dimchannel].[channel Name].[a],[dimension1].[Dimension1Key].[1],[region].[region Name].[abc]) 
+0

我已經試過均價也不過爲立方體返回彙總值,以便其相同和 –

+0

你的意思[措施]。[參考價格] = [措施]。[AVG價格] ?? –

+0

WITH MEMBER [措施]。[av。價格] AS AVG(({[Dim Timeperiod Derived]。[Week Sequence] .CurrentMember,{[Dim Timeperiod Derived]。[Year]。[Year] .Allmembers},{[dim Region]。[Region Name]。[總計ID]} ,{[Dim Channel]。[Channel Name] .Children}),[Measures]。[Price Per Pack])select {[Measures]。[av。價格]},非空{{[Dim Flavor Category]。[Flavor Category TD]。[Flavor Category TD] .ALLMEMBERS)} FROM(SELECT {[Dim Timeperiod Derived]。[Dim Timeperiod Derived]。[Week Sequence ]。&[51]} FROM [dataCube]) –

0
enter code here 
With SET [ALL OTHERS] AS { ({[Dim Timeperiod Derived].[Week Sequence].& 51]:[Dim Timeperiod Derived].[Week Sequence].&[51]},[Measures].[Price Per Pack])}member [Measures].[AVG Price] as AVG([ALL OTHERS]) MEMBER [Measures].[Current AVG Price] AS MAX(({[Dim Timeperiod Derived].[Week Sequence].&[51]:[Dim Timeperiod Derived].[Week Sequence].&[51]}),[Measures].[Price Per Pack])MEMBER [Measures].[Sum Price] AS AVG(({[Dim Timeperiod Derived].[Week Sequence].&[51]:[Dim Timeperiod Derived].[Week Sequence].&[51]}),[Measures].[Price Per Pack]) SELECT {[Measures].[Current AVG Price ],[Measures].[Sum Price] ,[Measures].[AVG Price]} ON COLUMNS ,NON EMPTY {[Dim Flavor Category].[Flavor Category RD].[Flavor Category RD].ALLMEMBERS,[Dim Flavor Category].[Flavor Category RD].[ALL OTHERS]} ON ROWS FROM (SELECT {[Dim Product Level].[Product Level Name].[FLAVOUR]} ON COLUMNS FROM (SELECT {[Dim Brand].[Brand Name].[COCA COLA]} ON COLUMNS FROM (SELECT {[Dim Category].[Category Name].[SPARKLING]} ON COLUMNS FROM (SELECT {[Dim Channel].[Channel Name].[Total Channel]} ON COLUMNS FROM (SELECT {[Dim Subchannel].[Subchannel Name].[Total]} ON COLUMNS FROM (SELECT {[Dim Subregion].[Subregion Name].[Total]} ON COLUMNS FROM (SELECT {[Dim Region].[Region TD].[Total ID]} ON COLUMNS FROM (SELECT {[Dim Country].[Country Name].[Indonesia]} ON COLUMNS FROM [Smartscan ASEAN])))))))) 

個所有這些查詢返回相同的輸出

 Current AVG Price    Sum Price   AVG Price 

COLA 604314.177978516 604314.177978516 604314.177978516

相關問題