MDX經常使用幾種查詢對比

MDX1:架構

SELECT 
NON EMPTY {Hierarchize(
                {
                [Measures].[年初數 的總和], [Measures].[期末數 的總和], [Measures].[本期發生數 的總和]} 
                    )
          }
    ON COLUMNS,

    NON EMPTY {Hierarchize(
{
    CROSSJOIN({[年月表].[時間].[]}
                ,CROSSJOIN({[年月表].[月份].[月份]}
                    ,CROSSJOIN( {[組織架構表].[組織編碼].[組織編碼]}, 
                                    CROSSJOIN({[組織架構表].[組織名稱].[組織名稱]}
                                                ,CROSSJOIN({[帳簿表].[帳簿名稱].[帳簿名稱]}
                                                ,CROSSJOIN({[損益視圖].[項目名稱].[項目名稱]} ,{[資產負債視圖].[資產項目].[資產項目]})
                                                            )
                                                ) 
                                )
                            )

              )

}
    )
          }
 ON ROWS
FROM [FinBPCube]
View Code

效果:ide

 

MDX1 不用CrossJoin:編碼

SELECT 
NON EMPTY {Hierarchize(
                {
                [Measures].[年初數 的總和], [Measures].[期末數 的總和], [Measures].[本期發生數 的總和]} 
                    )
          }
    ON COLUMNS,

    NON EMPTY {Hierarchize(
{
    ([年月表].[時間].[]
    ,[年月表].[月份].[月份]
    ,[組織架構表].[組織編碼].[組織編碼]
    ,[組織架構表].[組織名稱].[組織名稱]
    ,[帳簿表].[帳簿名稱].[帳簿名稱]
    ,[損益視圖].[項目名稱].[項目名稱]
    ,[資產負債視圖].[資產項目].[資產項目]
    )

}
    )
          }
 ON ROWS
FROM [FinBPCube]
View Code

和上面同樣效果spa

 

 

MDX2:3d

SELECT 
NON EMPTY {Hierarchize(
                
                {
                CROSSJOIN( [年月表].[時間].[]    ,
                {[年月表].[月份].[月份]} )
                
                    
                }
                    )
          }
    ON COLUMNS,

    NON EMPTY {Hierarchize(
{
    
                    CROSSJOIN( {[組織架構表].[組織編碼].[組織編碼]}, 
                                    CROSSJOIN({[組織架構表].[組織名稱].[組織名稱]}
                                                ,CROSSJOIN({[帳簿表].[帳簿名稱].[帳簿名稱]}
                                                ,CROSSJOIN({[損益視圖].[項目名稱].[項目名稱]} ,{[資產負債視圖].[資產項目].[資產項目]})
                                                            )
                                                ) 
                                )
                

}
    )
          }
 ON ROWS
FROM [FinBPCube]
where (
[Measures].[本期發生數 的總和]) 
View Code

效果:code

 

MDX3:blog

WITH

SET MonArray AS {[年月表].[月份].[月份]} 

MEMBER [年月表].[月份].[月彙總] AS
AGGREGATE(MonArray)

SELECT 
NON EMPTY {Hierarchize(
                
                {
                
                {MonArray,[年月表].[月份].[月彙總]} 
                
                    
                }
                    )
          }
    ON COLUMNS,

    NON EMPTY {Hierarchize(
{
    
                    CROSSJOIN( {[組織架構表].[組織編碼].[組織編碼]}, 
                                    CROSSJOIN({[組織架構表].[組織名稱].[組織名稱]}
                                                ,CROSSJOIN({[帳簿表].[帳簿名稱].[帳簿名稱]}
                                                ,CROSSJOIN({[損益視圖].[項目名稱].[項目名稱]} ,{[資產負債視圖].[資產項目].[資產項目]})
                                                            )
                                                ) 
                                )
                

}
    )
          }
 ON ROWS
FROM [FinBPCube]
where (
[Measures].[本期發生數 的總和]) 
View Code

可是注意:event

相關文章
相關標籤/搜索