0
推荐
4211
阅读

MDX Step by Step 读书笔记(九) - Working with Time 处理时间

开篇介绍这一章节主要用到的 MDX 函数:PeriodsToDate( [Level , [Member]] ) - 从指定级别的范围内,返回与指定成员同一级别,从第一个期间开始到指定成员结束的期间集。Ytd( [Member] )Qtd( [Member] )Mtd( [Member] )Wtd( [Member] )LastPeriods( n [, Member] )  - 返回从比指定成员表达式滞后 n - 1...

发表了文章 • 2015-09-28 11:26 • 0 条评论

0
推荐
3584
阅读

MDX Step by Step 读书笔记(八) - Navigating Hierarchies 层次结构导航

开篇介绍本章主要内容包括:解释各种不同的 MDX 导航函数的使用: Parent, Children, FirstChild, LastChild, Siblings, FirstSibling, LastSibling, RANK通过导航函数定位层次结构中的成员: Ancestor, Ancestors, Ascendants, Decendants, Cousin在层次结构中估算成员的位置: PrevMember, NextMember, Lag, Lead分析服务...

发表了文章 • 2015-09-28 11:25 • 0 条评论

0
推荐
3699
阅读

MDX Step by Step 读书笔记(七) - Performing Aggregation 聚合函数之 Max, Min, Count , DistinctCount 以及其它 TopCount, Generate

MDX 中最大值和最小值MDX 中最大值和最小值函数的语法和之前看到的 Sum 以及 Aggregate 等聚合函数基本上是一样的:Max( {Set} [, Expression])Min( {Set} [, Expression])直接看例子,先查询出所有 Sub Category 下的 Reseller Sales Amount。 然后使用 MAX 函数查询出 Sub Category 下最大的 Reseller Sales Amou...

发表了文章 • 2015-09-28 11:23 • 1 条评论

0
推荐
3010
阅读

MDX Step by Step 读书笔记(七) - Performing Aggregation 聚合函数之 Sum, Aggregate, Avg

开篇介绍SSAS 分析服务中记录了大量的聚合值,这些聚合值在 Cube 中实际上指的就是度量值。一个给定的度量值可能聚合了来自事实表中上千上万甚至百万条数据,因此在设计阶段我们所能看到的度量实际上就已经应用了某些聚合函数来决定这个值怎样被聚合。当然有可能已有的度量值远远还不够,还需要在查询的时候继续从不同的...

发表了文章 • 2015-09-28 11:22 • 0 条评论

0
推荐
2931
阅读

MDX Step by Step 读书笔记(六) - Building Complex Sets (复杂集合的处理) - Generate 和 Extract 函数的使用

Performing Advanced Set ConstructionAssembling Sets with the Generate Function如果你对C#或者VB 等其它变成语言熟悉的话,应该对循环比较熟悉。在循环中,可以遍历集合里的每一个对象,在遍历的时候,对对象会执行一些操作。换一种方式来看MDX  SET中的元组就如同看集合中的对象,使用 SET集合的一些表达式来...

发表了文章 • 2015-09-28 11:21 • 0 条评论

0
推荐
2542
阅读

MDX Step by Step 读书笔记(六) - Building Complex Sets (复杂集合的处理) - Combining Sets

Combining Sets不同的集合可以通过一定的方式组成新的集合,常提到的几种联合集合的方式如下图所示:                       Union 模式 – 两个集合连接在一起形成一个新的集合,这个新集合包含了左右两边集合的内容。Intersection 模式 – 只有内容相同的...

发表了文章 • 2015-09-28 11:20 • 0 条评论

0
推荐
3287
阅读

MDX Step by Step 读书笔记(六) - Building Complex Sets (复杂集合的处理) - Filtering Sets

Filtering Sets 部分定义参照 MSDN-Filter 函数对指定集中的每个元组计算指定的逻辑表达式,如果逻辑表达式计算结果为 true,那么该函数将返回由指定集中的每个元组构成的集。如果所有元组的计算结果都不为 true,则返回一个空集。Filter 函数的工作方式与 IIf 函数类似,IIf 函数只返回两个选项中的一个...

发表了文章 • 2015-09-28 11:18 • 0 条评论

0
推荐
2634
阅读

MDX Step by Step 读书笔记(六) - Building Complex Sets (复杂集合的处理) - TopCount - BottomCount - Head - Tail - Item 函数的使用

TopCount  和 ButtomCount 函数先看一个之前的例子,示例一 使用Order 排序SELECT {   ([Measures].[Reseller Sales Amount]) } ON COLUMNS, Order(     {[Product].[Subcategory].[Subcategory].Members},     ([Measures].[Reseller Sales Amount]),     BDESC ) ON ROWS FROM [Step-by-Step]...

发表了文章 • 2015-09-28 11:17 • 0 条评论

0
推荐
2602
阅读

MDX Step by Step 读书笔记(六) - Building Complex Sets (复杂集合的处理) - 集合的排序

Assembling Ordered Sets 集合的排序默认的情况下,SET 集合中的元组返回时的顺序就和它在集合定义时的一样。如果在使用 Members 函数时,元组返回的顺序就会和它们内部成员在层次结构中定义的顺序一样。但是更多的时候,有可能需要返回的集合中元组的顺序有所不同,一些更加重要的数据就需要显示在最前面,因此就需要用...

发表了文章 • 2015-09-28 11:16 • 0 条评论

1
推荐
2800
阅读

MDX Step by Step 读书笔记(五) - Working with Expressions (MDX 表达式) - Infinite Recursion 和 SOLVE_ORDER 原理解析

这一部分包含了两部分内容,一部分是对 MDX Infinite Recursion 无限循环的原理解析,第二部分是对计算成员的 SOLVE_ORDER 原理进行了解析。计算成员中上下文冲突的问题 - 避免无限循环 Avoiding Infinite Recursion直接看一个例子,并假设我们的纬度中多了一个地理纬度和国家这个层次结构。WITH MEMBER [Product]....

发表了文章 • 2015-09-28 11:15 • 0 条评论

1
推荐
2712
阅读

MDX Step by Step 读书笔记(五) - Working with Expressions (MDX 表达式) - CurrentMember - Properties - Existing 的使用

Current Member  当前成员在计算成员中会经常用到获取当前对象的函数, 可以这样来访问 [Dimension].[Hierarchy].CurrentMember但是要注意这个函数返回的仅仅是一个成员的引用,一般要通过访问成员的某些属性来获取一些具体的值。    示例一 - 访问当前成员和父成员WITH MEMBER [Measures].[Cu...

发表了文章 • 2015-09-28 11:13 • 0 条评论

2
推荐
2641
阅读

MDX Step by Step 读书笔记(五) - Working with Expressions (MDX 表达式)

1. 大多数表达式会返回数值类型的值,但是也能返回例如字符串,时间,布尔或者其它类型的值。2. 一般表达式的结果都是几个值通过操作符运算后得到的,下列表格中显示了对比,逻辑的,数值的,字符串以及集合操作符。3. SSAS 中的 VBA 函数 4. Calculated Members 计算成员可以把计算成员当成已存在的属性或者层次结...

发表了文章 • 2015-09-28 11:12 • 3 条评论

1
推荐
2756
阅读

MDX Step by Step 读书笔记(四) - Working with Sets (使用集合) - 我对Exists 函数的理解

Auto-Exists 的作用可以理解参入Cross Join 的双方 SET  集合互相交叉组合形成一个新的 SET 集合并且只有匹配的元组才会列出来,没有关联关系的不会返回. 但是更多的时候可能只需要返回一个集合中能与另一个集合关联的元组集合,这时可以使用 Exists.简单来说 Auto-Exists 有 A 和 B 两个集合, 他们并列返回 A和B ...

发表了文章 • 2015-09-28 11:11 • 2 条评论

1
推荐
2625
阅读

MDX Step by Step 读书笔记(四) - Working with Sets (使用集合) - Limiting Set and Auto-Exists

Limiting Sets 限制集合 Working with Auto-Exists 自动存在如何干活的读完和实践完这一小章节例子后,我对这样的Limiting Sets 和 Working with Auto-Exists 有自己的理解。Limiting Sets 可以理解为SSAS 限制了Sets 集合的大小,如何限制的呢?我理解就是这里的 “Auto-Exists”自动存在,通俗理解就是两个Sets 集合之间...

发表了文章 • 2015-09-28 11:10 • 1 条评论

2
推荐
3745
阅读

MDX Step by Step 读书笔记(四) - Working with Sets (使用集合)

基本概念1. Set  - 元组的集合,在 Set 中的元组用逗号分开,Set 以花括号括起来,例如:{ ([Product].[Category].[Accessories]), ([Product].[Category].[Bikes]), ([Product].[Category].[Clothing]), ([Product].[Category].[Components]) }从这个例子中可以看到Set的几个特点:一个Set 中可以...

发表了文章 • 2015-09-27 15:18 • 1 条评论