MDX Order排序
Order基础用法:
Numeric expression syntax
Order(Set_Expression, Numeric_Expression
[ , { ASC | DESC | BASC | BDESC } ] )
String expression syntax
Order(Set_Expression, String_Expression
[ , { ASC | DESC | BASC | BDESC } ] )
例一:对数据排序
select [Measures].[Unit Amount] on 0,
order([Dim No Of Horses].[Horses Group Code].[Horses Group Code], --Set_Expression
[Measures].[Unit Amount], --Numeric_Expression
asc ) on 1
from PNLDB_Cube
例二:对维度排序
SELECT
[Measures].[Unit Amount HK] ON COLUMNS,
Order(
{[Code Race Date].[Month Number Of Season].[Month Number Of Season]}
,StrToValue([Code Race Date].[Month Number Of Season].currentmember.name), --StrToValue函数将String转换成Int
BASC
) ON ROWS
from [PNLDB_Cube];
Order二次排序:
with
member Measures.CurYearProfit as
(iif("1"='0',[Measures].[Trading Profit HK],[Measures].[Trading Profit]),StrToMember('[Code Race Date].[Season Year].&['+"2009"+']'))
member Measures.CurYearUnitAmount as
(iif("1"='0',[Measures].[Unit Amount HK],[Measures].[Unit Amount]),StrToMember('[Code Race Date].[Season Year].&['+"2009"+']'))
member Measures.CurYearNoOfRaces as
([Measures].[NoOfRaces],StrToMember('[Code Race Date].[Season Year].&['+"2009"+']'))
SET OrderedTrack AS Order
([Code Track].[Track Name].[Track Name],
iif(Measures.CurYearUnitAmount>0,Measures.CurYearProfit/Measures.CurYearUnitAmount+1,0), asc)
member measures.roi as
iif(Measures.CurYearUnitAmount>0,Measures.CurYearProfit/Measures.CurYearUnitAmount+1,null)
select {measures.roi,
measures.CurYearProfit,measures.CurYearUnitAmount
,Measures.CurYearNoOfRaces} on 0,
NON EMPTY{
Order(OrderedTrack---------------------------------------------------------------------------------已用Order排序的Set
,iif(Measures.CurYearNoOfRaces>0,1,0), bdesc)-----------------------------------------------------再经Order的二次排序
} on 1
FROM [PNLDB_Cube]
MDX Order排序的更多相关文章
- mysql order排序
使用order by 可以对结果进行排序, 默认情况下,order by 以升序进行排序,因此ASC 子句是可选的. DESC 是降序排列. 升序 select * from emp where d ...
- SQL order 排序
select * from emp;
- Thinkphp 无法使用->order() 排序的两种解决的方法!
使用ThinkPHP,却发现无法使用->order($order)来排序. $order = " info.date2 desc "; 非常遗憾的是这样写结果order却变成 ...
- TP5 order排序
order方法属于模型的连贯操作方法之一,用于对操作的结果排序. ->order('sort desc,id desc') 用法如下: Db::table('think_user')->w ...
- SQL联查语句加上order排序之后速度超级慢
项目中使用到了分页查询,形式如下 select * from ( select row_number() over (order by a.id0) as seq,a.* from PMS_T_D_S ...
- 2016/04/26 流程 数据库lcdb 四个表 1,用户表users 2,流程表(设定有哪些流程)liucheng 3,流程发起者表(记录谁发起到哪里) 4,流程经过的人员表 flowpath (order排序)
流程: 十一 个页面 1,denglu.php(登录) <!DOCTYPE html> <html lang="en"> <head> ...
- MDX学习笔记(整理) MDX语法
1.1.members和Children的用法. select [Measures].[Internet Sales Count] on columns, [客户].[全名] on rows from ...
- EasyUI DataGrid 添加排序
这个事例演示了如何在点击列头的时候排序DataGrid中全部的列可以通过点击列头被排序.你可以定义可以被排序的列.默认的,列不能被排序除非你设置sortable属性为TRUE,下面是例子:标记 < ...
- 纯JS操作服务器绑定控件(Repeat)实现表头升降排序
JS实现功能 var obj = function (id) { return "string" == typeof id ? document.getElementById(id ...
随机推荐
- cwe
- hive中关于数据库与表等的基本操作
一:基本用法 1.新建数据库 2.删除数据库 3.删除非空的数据库 4.指定数据库的位置 LOCATION:指定数据库的位置,不会在系统的默认文件下. 5.在指定数据库中新建表(验证在指定的数据库中可 ...
- 是什么在.NET程序关闭时阻碍进程的退出?
在平时使用软件或是.NET程序开发的过程中,我们有时会遇到程序关闭后但进程却没有退出的情况,这往往预示着代码中有问题存在,不能正确的在程序退出时停止代码执行和销毁资源.这个现象有时并不容易被察觉,但在 ...
- JDK中的URLConnection参数详解
针对JDK中的URLConnection连接Servlet的问题,网上有虽然有所涉及,但是只是说明了某一个或几个问题,是以FAQ的方式来解决的,而且比较零散,现在对这个类的使用就本人在项目中的使用经验 ...
- Tomcat执行流程
- windows SVN搭建
Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上了,下载地址: http:// ...
- Sql server中内连接语句
数据库中学生表和课程表如下: 内连接sql语句: select a.studentName,a.studentAge,b.courseName from student a inner join co ...
- angularJs的工具方法
- 由单例模式学到:Lazy<T>
http://www.cnblogs.com/zhangpengshou/archive/2012/12/10/2811765.html http://www.cnblogs.com/anytao/a ...
- 30天,APP创业从0到1【7.11郑州站】
活动概况 时间:2015年07月11日13:30-16:30 地点:慧谷咖啡(郑州杨金路9号河南外包产业园天元W栋) 主办:APICloud.环信.河南中医药大学医药信息化实验室 网址:www.api ...