SSAS的MDX的基础函数(二)
1.Order(Set_Expression,Numberic_Expression[,{ASC|DESC|BASC|BDESC}])
Order函数既可以考虑层次结构(通过使用ASC或DESC标志来指定),也可以不考虑层次结构(通过使用BASC或BDESC标志来指定,其中B表示"打乱层次结构").如果指定了ASC或DESC,则Order函数先根据成员在层次结构中的位置进行排序,然后对每一级别进行排序.如果指定了BASC或BDESC,则Order函数排列集中的所有成员时不考虑层次结构.如果未指定任何标志,则默认为"ASC"
如果Order函数用于其两个或多个层次结构执行叉积的集合,并且使用DESC标志,则只对该集合中最后一个层次结构的成员进行排序.这与Analysis service 2000不同,厚泽对集合中的所有层次结构进行排序.
示例:
SELECT{([Measures].[Reseller Sales Amount])} ON COLUMNS,Order({[Product].[Subcategory].children},([Measures].[Reseller Sales Amount]),DESC) ON ROWSfrom[BF_MDX]
效果如下:
2. 结合vba函数
SELECT{([Measures].[Reseller Sales Amount]),([Measures].[Internet Sales Amount])}
ON COLUMNS,Order({[Product].[Product].[Product].Members},
VBAMDX!ABS(([Measures].[Reseller Sales Amount]) -([Measures].[Internet Sales Amount])),DESC)
ON ROWS
from[BF_MDX]
效果如下,结果就是经销商减去网络销售,差距最大的往上排序:
3. 注意参数的区别
SELECT{([Measures].[Reseller Sales Amount])} ON COLUMNS,Order({[Product].[Category].[Category].Members} *{[Product].[Subcategory].[Subcategory].Members},([Measures].[Reseller Sales Amount]),desc --BDESC ) ON ROWSFROM[BF_MDX]
效果如下,每个大类下的小类排序 ,如果是BDESC的话就是全局排序,不分大小类:
2.层次结构排序
Hierarchize(Set_Expression [ , POST ] )
Hierarchize函数按层次结构的顺序组织指定集中的成员。 此函数始终保留重复项。
如果未指定 POST,则此函数按自然顺序对一定级别的成员进行排序。 如果未指定其他排序条件,则成员的自然顺序就是它们在层次结构中的默认排序顺序。 子成员会紧跟在它们的父成员之后。
如果指定了 POST,则 Hierarchize函数按非自然顺序对一定级别的成员进行排序。 也就是说,子成员优先于他们的父级。
示例:
SELECT{([Measures].[Reseller Sales Amount])} ON COLUMNS,Hierarchize({([Product].[Product Categories].[Subcategory].[Road Bikes]),([Product].[Product Categories].[All Products]),([Product].[Product Categories].[Subcategory].[Mountain Bikes]),([Product].[Product Categories].[Category].[Bikes]),([Product].[Product Categories].[Subcategory].[Touring Bikes])}) ON ROWSfrom [BF_MDX]
效果如下;
3. 范围选取函数topcount和bottomcount, head和tail
示例:
SELECT{([Measures].[Reseller Sales Amount])} ON COLUMNS,TopCount({[Product].[Subcategory].[Subcategory].Members},5,([Measures].[Reseller Sales Amount])) ON ROWSfrom [BF_MDX]
效果:
示例2.
SELECT{([Measures].[Reseller Sales Amount])} ON COLUMNS,TopCount({[Product].[Subcategory].[Subcategory].Members},5,
SELECT {([Measures].[Reseller Sales Amount])} ON COLUMNS,head(order({[Product].[Subcategory].[Subcategory].Members},([Measures].[Reseller Sales Amount]),desc),5) ON ROWSfrom [BF_MDX]
效果:
4.Item函数以及综合运用一下上面的函数,
WITHMEMBER [Measures].[Top Product Sales]AS{ TopCount( [Date].[Calendar Year].currentmember* [Product].[Product].[Product].Members, 1, ([Measures].[Internet Sales Amount]) ) *{[Measures].[Internet Sales Amount]}}.Item(0),FORMAT_STRING="Currency"
MEMBER [Measures].[Top Product Name]AS{ TopCount( [Date].[Calendar Year].currentmember* [Product].[Product].[Product].members, 1, ([Measures].[Internet Sales Amount]) ) }.Item(0).item(1).name
SELECT{ ([Measures].[Internet Sales Amount]), ([Measures].[Top Product Sales]), ([Measures].[Top Product Name]) } ON COLUMNS,{ ([Date].[Calendar Year].[CY 2001]): ([Date].[Calendar Year].[CY 2004])} ON ROWSFROM[BF_MDX]
效果:
SSAS的MDX的基础函数(二)相关推荐
- SSAS的MDX的基础函数(三),及聚合函数
1. Filter函数 Filter(Set_Expression, Logical_Expression )返回根据搜索条件对指定集进行筛选后得到的集. Filter 函数对指定集中的每个元组计算 ...
- 【数据库】第二章 基础函数、聚合函数、条件查询、子查询和多表查询
[数据库]第二章 基础函数.条件查询.聚合函数.多表查询和子查询 文章目录 [数据库]第二章 基础函数.条件查询.聚合函数.多表查询和子查询 一.基础函数 二.聚合函数 1.COUNT 2.MAX/M ...
- python语言基础实验_实验二Python语言基础函数包练习.doc
实验二Python语言基础函数包练习 实验 Python语言基础函数包练习:1208 学号: 实验目的 1.Python语言包,如math.NumPySciPy和Matplotlib等函数包的使用实验 ...
- MDX查询基础(一)
本文完全转载自:http://blog.sina.com.cn/s/blog_622a0069010120pc.htmlhttp://blog.sina.com.cn/s/blog_622a00690 ...
- 【C++自我精讲】基础系列二 const
[C++自我精讲]基础系列二 const 0 前言 分三部分:const用法.const和#define比较.const作用. 1 const用法 const常量:const可以用来定义常量,不可改变 ...
- python之内置函数(二)与匿名函数、递归函数初识
一.内置函数(二) 1.和数据结构相关(24) 列表和元祖(2) list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素). tuple:将一个可迭代对象转化成元组(如果是字典, ...
- pytorch基础函数学习
深度学习框架,似乎永远离不开哪个最热哪个最实用的话题,自己接触甚浅,尚不敢对齐进行大加评论,这里也只是初步接触.目前常见的有TensorFlow,pytorch,Keras等,至于目前哪个做好用,就像 ...
- (五)JS基础知识二(通过图理解原型和原型链)【三座大山之一,必考!!!】
JS基础知识二(原型和原型链) 提问 class 继承 类型判断(instanceof) 原型 原型关系 基于原型的执行规则 原型链 说明 提问 如何准确判断一个变量是不是数组 class的原型本质 ...
- 深度学习(6)TensorFlow基础操作二: 创建Tensor
深度学习(6)TensorFlow基础操作二: 创建Tensor 一. 创建方式 1. From Numpy,List 2. zeros,ones (1) tf.zeros() (2) tf.zero ...
最新文章
- Scrum团队初建的十一件事——Scrum中文网
- Zookeeper 的典型应用场景场景
- 实现EditText输入金额(小数点后两位)
- ClassLoader(二)- 加载过程
- 分布式通信框架 - rmi
- V神建议使用BCH区块链用于以太坊“数据层”
- 9 Redis 持久化AOF
- 图片转注释python代码(转)
- 新一代Spring Web框架WebFlux!
- 【转】简析 .NET Core 构成体系
- 一直接受键盘字符 接收小写字符出输出大写 接受大写输出小写 数字不输出
- 听说你想进玩TikTok?
- 20050909:女乘客钓男司机?
- 渗透之——Metasploit命令及模块
- 【Unity3D插件】DoTween插件(二)
- 空降项目经理,该如何服众?
- android输入法剪贴板,QQ输入法手安卓V5.4剪贴板 任性粘贴
- w ndows无法连接到无线网络,windows无法连接到无线网络,小编教你windows无法连接到无线网络怎么办...
- windows硬盘数据安全处理工具
- python列表换行输出_Python从列表转换为字符串时处理换行符
热门文章
- 2020年海南大学计算机调剂,2020年海南大学招收调剂生
- VMWare NSX安全生产和DMZ用例的详细设计指南
- 安装VCSA6.5(vCenter Server Appliance 6.5)
- Java基础学习总结(130)——使用WebSocket导致jUnit单元测试报No suitable default RequestUpgradeStrategy found错误的解决方法
- 敏捷开发系列学习总结(10)——到底什么是敏捷开发?
- python内置json模块_python的常用内置模块之序列化模块json
- 二次优化问题dfp_MATLAB优化问题应用实例讲解
- java的冒泡_java 冒泡排序
- 长安福特召回部分新蒙迪欧汽车 共计327辆
- 0423-mysql查询语句大全