MDX常用几种查询对比
MDX1:
SELECT
NON EMPTY {Hierarchize(
{
[Measures].[年初数 的总和], [Measures].[期末数 的总和], [Measures].[本期发生数 的总和]}
)
}
ON COLUMNS, NON EMPTY {Hierarchize(
{
CROSSJOIN({[年月表].[时间].[年]}
,CROSSJOIN({[年月表].[月份].[月份]}
,CROSSJOIN( {[组织架构表].[组织编码].[组织编码]},
CROSSJOIN({[组织架构表].[组织名称].[组织名称]}
,CROSSJOIN({[账簿表].[账簿名称].[账簿名称]}
,CROSSJOIN({[损益视图].[项目名称].[项目名称]} ,{[资产负债视图].[资产项目].[资产项目]})
)
)
)
) ) }
)
}
ON ROWS
FROM [FinBPCube]
效果:

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

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

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].[本期发生数 的总和])

但是注意:

MDX常用几种查询对比的更多相关文章
- Nhibernate与Dapper对比,及Nhibernate增删改和9种查询语法
1,Sql语法. NH:HQL Dapper:原生Sql. 点评:原生Sql可以直接放在数据库里执行,Hql不行,且Hql增加学习负担.(Hn也可以原生Sql,但好像用的不多呀) 2,开发速度. NH ...
- C#-正则,常用几种数据解析-端午快乐
在等待几个小时就是端午节了,这里预祝各位节日快乐. 这里分享的是几个在C#中常用的正则解析数据写法,其实就是Regex类,至于正则的匹配格式,请仔细阅读正则的api文档,此处不具体说明,谢谢. 开始吧 ...
- Dynamic CRM 2013学习笔记(十)客户端几种查询数据方式比较
我们经常要在客户端进行数据查询,下面分别比较常用的几种查询方式:XMLHttpRequest, SDK.JQuery, SDK.Rest. XMLHttpRequest是最基本的调用方式,JQuery ...
- C语言清空输入缓冲区的N种方法对比
转自C语言清空输入缓冲区的N种方法对比 C语言中有几个基本输入函数: //获取字符系列 int fgetc(FILE *stream); int getc(FILE *stream); int get ...
- J2EE进阶(十七)Hibernate中常用的HQL查询方法(getHibernateTemplate())
J2EE进阶(十七)Hibernate中常用的HQL查询方法(getHibernateTemplate()) 当我们使用Hibernate进行数据的CRUD操作时,利用模版进行操作不失为一种方法. ...
- Net Core WebApi几种版本控制对比
Net Core WebApi几种版本控制对比 一.版本控制的好处: (1)有助于及时推出功能, 而不会破坏现有系统. (2)它还可以帮助为选定的客户提供额外的功能. API 版本控制可以采用不同的方 ...
- ORM常用字段及查询
目录 ORM常用字段及参数 创建表 ORM常用字段 ORM字段参数 ORM表关系创建 ForeignKey OneToOneField ManyToManyField 多对多三种创建方式 单表查询 q ...
- 七 Hibernate5种查询检索方式,单表&多表
Hibernate中提供了5种查询方式: OID查询 对象导航查询 HQL检索 QBC检索 SQL检索 OID检索: Hibernate根据对象的oid(表中主键) 使用get方法 Custome ...
- Atitit 常用二维码对比(QR、PDF417、DM、汉信码 Aztec code maxicode
Atitit 常用二维码对比(QR.PDF417.DM.汉信码 Aztec code maxicode DM码则更"小",可在仅仅25mm²的面积上编码30个数字.但也就是因为太小 ...
随机推荐
- Groovy使用List集合
获取List集合中的元素 def lst = [1,3,4,1,8,9,2,6] println lst[-1] println lst[-2] 输出结果: 输出: 6 2 使用Range(范围)对象 ...
- cucumber安装步骤
#Start Guide##Environment###1. Install Ruby Verify your installation by running ruby -v in a termina ...
- Basic4android v3.20 发布
这次主要是可视化设计器的增强. 具体新功能如下: This version includes many important improvements: Visual designer Anchors ...
- RocketMQ 运维指令
1.1. 控制台使用 RocketMQ 提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker 等信息的管理 登录控制台 首先进入RocketMQ 工程,进入/RocketMQ/bin ...
- Layout布局源码浅析之——FrameLayout
一直想研究下安卓各种布局控件,FrameLayout是安卓最简单的界面布局,所以就从FrameLayout讲起. 1.属性.frameLayout继承ViewGroup,除了拥有ViewGroup的属 ...
- Android-LogUtil-工具类
LogUtil-工具类 是专门Log日志打印 和 Toast的提示,的公共方法 package common.library.utils; import android.content.Context ...
- linux的定制和发布(一)
如果总是仰视高山,就会挫伤我们攀登的勇气,使我们固步自封.我们需要做的就 是迈开自己的脚步,踏出第一步,let's go! Linux的裁剪一般有三种方法: 1.以一个已经安装好的系统为基 ...
- maven项目打jar包
打包有两种方式: 1.直接 项目--右键--export,选择JAR file打包(不推荐这种方式): 这样直接打的包通过java -jar 会提示“没有主清单属性”,需要修改jar包中的MANIFE ...
- 2:C#TPL探秘
理论: 1. 只要方法是 Task类型的返回值,都可以用 await 来等待调用获取返回值. 2. 如果一个返回 Task类型的方法被标记了 async,那么只要方法内部直接 return T 这个 ...
- Beginning Asp.Net Security 读书笔记-----XSS
几个月前通过Veracode对代码进行动态和静态安全扫描,扫出了数以千计的安全bug,基本上都是top 10的,安全漏洞. 其中CWE80,CWE601数量最多.具体CWE的定义可参考http://c ...