zoukankan      html  css  js  c++  java
  • 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

    效果:

    MDX1 不用CrossJoin:

    SELECT 
    NON EMPTY {Hierarchize(
                    {
                    [Measures].[年初数 的总和], [Measures].[期末数 的总和], [Measures].[本期发生数 的总和]} 
                        )
              }
        ON COLUMNS,
    
        NON EMPTY {Hierarchize(
    {
        ([年月表].[时间].[]
        ,[年月表].[月份].[月份]
        ,[组织架构表].[组织编码].[组织编码]
        ,[组织架构表].[组织名称].[组织名称]
        ,[账簿表].[账簿名称].[账簿名称]
        ,[损益视图].[项目名称].[项目名称]
        ,[资产负债视图].[资产项目].[资产项目]
        )
    
    }
        )
              }
     ON ROWS
    FROM [FinBPCube]
    View Code

    和上面一样效果

    MDX2:

    SELECT 
    NON EMPTY {Hierarchize(
                    
                    {
                    CROSSJOIN( [年月表].[时间].[]    ,
                    {[年月表].[月份].[月份]} )
                    
                        
                    }
                        )
              }
        ON COLUMNS,
    
        NON EMPTY {Hierarchize(
    {
        
                        CROSSJOIN( {[组织架构表].[组织编码].[组织编码]}, 
                                        CROSSJOIN({[组织架构表].[组织名称].[组织名称]}
                                                    ,CROSSJOIN({[账簿表].[账簿名称].[账簿名称]}
                                                    ,CROSSJOIN({[损益视图].[项目名称].[项目名称]} ,{[资产负债视图].[资产项目].[资产项目]})
                                                                )
                                                    ) 
                                    )
                    
    
    }
        )
              }
     ON ROWS
    FROM [FinBPCube]
    where (
    [Measures].[本期发生数 的总和]) 
    View Code

    效果:

    MDX3:

    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

    但是注意:

  • 相关阅读:
    到现在为止中国荣获43金
    php fpdf 生成表格总结
    今天,开心``
    js 浮动层实现方法
    奥运,刘翔,CSDN,菲尔普斯,中国
    marc 数据基本字段
    Windows mobile下获取系统图标
    HTTP协议学习笔记
    UNIX网络编程学习(14)使用select正确处理EOF的str_cli函数修订版
    ARP协议学习笔记
  • 原文地址:https://www.cnblogs.com/Bruce_H21/p/10592512.html
Copyright © 2011-2022 走看看