mdx 时间函数

PS这片文章太cool了. 直接看这个吧http://www.cnblogs.com/downmoon/archive/2011/11/29/2267593.html
 
PeriodsToDate( [ Level_Expression [ ,Member_Expression ] ] )
按照时间维度中的指定级别的约束,从给定成员所在的级别返回一组同级成员,从第一个同级成员开始,到给定成员结束。

几个比较混淆的概念

层次结构表达式 元组集表达式 级别表达式

级别表达式Level_Expressionmdx 时间函数_第1张图片   元组集表达式mdx 时间函数_第2张图片或者members都是.

层次结构表达式.

mdx 时间函数_第3张图片这些都是层次结构表达式.

现在来理解一下PeriodsToDate函数, 第一个参数是级别表达式. 表明是在哪个层次结构的级别里面, 而第二个就是限定成员了. 这第一个参数很费解. 比如看一个例子

mdx 时间函数_第4张图片mdx 时间函数_第5张图片mdx 时间函数_第6张图片mdx 时间函数_第7张图片

看着四个图. 年\半年\季限定符号, 下的表现. 年下的月, 当然是1-4月. 半年也是,  季度的话就不行了. 因为4月是第二个季度是, 四月本身就排第一.

 

period-to-date返回一个特定边界(如一季、一年等)的值。有时,你想计算所有统计日期内的一个精确值,这就是所谓的初始日期(Inception-to-Date)值。你可以引用Null成员,例如Null: [Date].[Calendar].CurrentMember将强制AS使用前一个成员到当前时间成员所在级别上的第一个成员的边界(Range),下面的查询与上例类似mdx 时间函数_第8张图片

你可能感兴趣的:(mdx 时间函数)