Cognos mdx 说明

 

Cognos mdx 说明!(zhuan)  

2009-08-15 15:28:34|  分类:cognos |  标签:|字号 订阅

Cognos8.3函数使用手册

 

1         Block Functions

1.1             _firstFromSet

原型

_firstFromSet ( set_exp, numeric_exp_max , numeric_exp_overflow )

说明

返回在集中找到的前几个(不超过 numeric_exp_max + numeric_exp_overflow)成员。  如果超过 numeric_exp_max + numeric_exp_overflow,则只返回成员的最大数目

案例

1、_firstFromSet([全险种综合N].[产品].[产品].[险类+],2,3)

2、_firstFromSet([全险种综合N].[产品].[产品].[险类+],2,20)

3、[全险种综合N].[产品].[产品].[险类+] 成员数为12

解释

1、2+3<12 , 返回集个数应为numeric_exp_max 即 2个

2、2+20>12 , 返回集个数应为成员最大集,即12个

 

 

1.2             _remainderSet

原型

_remainderSet (member_exp,  set_exp , numeric_exp )

说明

当 set_exp set 的大小大于 numeric_exp 时,成员表达式将包括在返回的集中

 

 

 

 

 

 

 

2        family, hierarchy, and member functions

2.1             hierarchy

原型

hierarchy ( level | member | set_exp )

说明

返回包含指定级别、成员或成员集的层级

案例

1、hierarchy([机动车辆保险])

解释

1、返回产品的成员集,包含所有的产品结构

 

2.2             level

原型

level ( member )

说明

返回成员的级别

案例

1、level ([机动车辆保险])

解释

1、返回产品的成员集,仅包含[机动车辆保险]成员

 

2.3             levels

原型

levels ( hierarchy , index )

说明

返回层级中与根级别相距某一距离(由“index”指定)的级别

案例

1、level ([机动车辆保险],2)

解释

1、返回产品的成员集,包含[机动车辆保险]及同级成员下所有二级成员

 

2.4             rootMembers

原型

rootMembers ( hierarchy )

说明

返回层级的根成员

案例

1、rootMembers ([每日一览N].[产品].[产品])

解释

1、返回根成员产品

 

2.5             currentMember

原型

currentMember (hierarchy )

说明

返回迭代过程中某个层级的当前成员。 如果指定层级不在所计算的表达式的上下文中,则假定为其默认成员

案例

1、currentMember ([每日一览N].[产品].[产品])

解释

1、返回成员产品

 

2.6             defaultMember

原型

defaultMember ( hierarchy )

说明

返回层级的默认成员

案例

1、defaultMember ([每日一览N].[产品].[产品])

解释

1、返回成员产品

 

2.7             lag

原型

lag ( member , index_exp )

说明

返回排在指定成员之前特定位数的同胞成员

案例

1、lag([2008/6],5)

解释

1、[2008/1] 返回的月份为[2008/6]前移index_exp,即5个月

 

2.8             lead

原型

lead ( member , index_exp )

说明

返回排在指定成员之后特定位数的同胞成员

案例

1、lead([2008/6],5)

解释

1、[2008/11] 返回的月份为[2008/6]后移index_exp,即5个月

 

2.9             Members

原型

members ( hierarchy | level )

说明

返回层级或级别中的成员集。 如果返回层级中的成员,则结果中无法保证成员的顺序;要按某一个顺序列出成员,必须使用明确排序的函数(如 hierarchize)

案例

1、members ([每日一览N].[产品].[产品].[险类+])

解释

1、返回层级下所有成员

 

2.10       nextMember

原型

nextMember ( member )

说明

返回包含指定成员的级别中的下一个成员

案例

1、nextMember ([2008/6]

解释

1、返回[2008/7]

 

2.11       prevMember

原型

prevMember ( member )

说明

返回包含指定成员的级别中的下一个成员

案例

1、prevMember ([2008/6]

解释

1、返回[2008/5]

 

2.12       ancestor

原型

ancestor ( member, level | integer )

说明

返回指定(命名)级别上指定成员的祖项,或返回以下级别上指定成员的祖项:指定成员上面指定数量的级别。 

注:当存在多个此类祖项时,结果可能不一致

案例

1、ancestor([机动车交通事故责任强制保险],1)

解释

1、返回[机动车辆保险],即[机动车交通事故责任强制保险]的上级,若level为2,则返回[产品],也就是上两级

 

2.13       ancestor

原型

ancestor ( member, level | integer )

说明

返回指定(命名)级别上指定成员的祖项,或返回以下级别上指定成员的祖项:指定成员上面指定数量的级别。 

注:当存在多个此类祖项时,结果可能不一致

案例

1、ancestor([机动车交通事故责任强制保险],[每日一览N].[产品].[产品].[险类+])

解释

1、返回[机动车辆保险],即[机动车交通事故责任强制保险]的上级,与[每日一览N].[产品].[产品].[险类+]同级

 

2.14       ancestors

原型

ancestors ( member , level | index )

说明

返回某一成员在指定级别或高于该成员的级别中的所有祖项。  (在指定级别上,大多数数据源只支持一个祖项,而某些数据源则支持多个祖项。 因此结果是成员集。)

案例

1、ancestors([机动车交通事故责任强制保险],1)

解释

1、返回[机动车辆保险],即[机动车交通事故责任强制保险]的上级,与[每日一览N].[产品].[产品].[险类+]同级

 

2.15       parent

原型

parent ( member )

说明

返回指定成员的父项成员

案例

1、ancestors ([机动车交通事故责任强制保险])

解释

1、返回[机动车辆保险],即[机动车交通事故责任强制保险]的父级

 

2.16       cousin

原型

cousin ( member1 , member2 )

说明

返回 member2 的子项,该子项在 member2 下面的相对位置与 member1 在其父项下面的相对位置相同

案例

1、cousin([机动车辆保险特种车保险],[企业财产保险])

解释

1、返回[财产综合保险]

 

2.17       descendants

原型

descendants ( member | set_expr , level | distance [ , { self | before | beforewithmember | after } ] )

说明

返回指定级别 (限定名称) 或与根级别相距某一距离 (整数 0..n) 的级别上某成员或成员集的子项集。可以指定多个选项 (用空格隔开) 以确定要返回的成员

案例

1、descendants([企业财产保险],[每日一览N].[产品].[产品].[险种])

解释

1、返回[企业财产保险]下险种级别的所有集合

 

2.18       firstChild

原型

firstChild ( member)

说明

返回成员的第一个子项

案例

1、firstChild([企业财产保险])

解释

1、返回[财产基本保险]

 

2.19       firstSibling

原型

firstSibling ( member )

说明

返回成员父项的第一个子项

案例

1、firstChild([企业财产保险])

解释

1、返回[机动车辆保险]

 

2.20       lastChild

原型

lastChild ( member )

说明

返回指定成员的最后一个子项

案例

1、lastChild ([企业财产保险])

解释

1、返回[电厂机器损坏保险]

 

2.21       lastSibling

原型

lastSibling ( member )

说明

返回指定成员的父项的最后一个子项

案例

1、lastSibling ([企业财产保险])

解释

1、返回[未归类]

 

2.22       siblings

原型

siblings ( member )

说明

返回指定成员的父项的子项

案例

1、siblings ([企业财产保险])

解释

1、返回[产品]的所有子项

 

3        relative time functions

3.1             parallelPeriod

原型

parallelPeriod ( level [ , int_exp [ , member ] ] )

说明

返回先前时段中与指定成员具有相同相对位置的成员。此函数与“Cousin”函数类似,但与时序的关系更为密切。该函数先得出处于“level”的“member”的祖项 (称为“祖项”);然后得出与“祖项”相距“int_exp”个位置的“祖项”同胞,并返回该同胞的子项中“member”的平行时段。如果未指定,“int_exp”默认值为 1,“member”的默认值为当前成员

案例

1、parallelPeriod([每日一览N].[日期].[日期].[年],1,[2008/7月])

解释

1、返回[2007/7月]

 

3.2             periodsToDate

原型

periodsToDate ( level , member )

说明

返回与指定成员处于同一级别的同胞成员集,并受指定级别限制。 它先查找处于“level”级别的“member”成员的祖项,然后返回此祖项中与“member”成员处于同一级别的子项(直到包括“member”成员)。 通常与时间维度配合使用

案例

1、periodsToDate([每日一览N].[日期].[日期].[年],[2008/5月])

解释

1、返回[2008/5月]前2008年内所有月

 

3.3             closingPeriod

原型

closingPeriod ( level [, member ] )

说明

返回指定级别上某一成员的子项中的最后一个同胞。 通常与时间维度配合使用

案例

1、closingPeriod([每日一览N].[日期].[日期].[月],[2008年])

解释

1、返回[2008年] 对应[每日一览N].[日期].[日期].[月]最后月

 

3.4             lastPeriods

原型

lastPeriods ( integer_exp , member )

说明

返回同一级别中以指定成员结尾的成员集。 返回的成员数是“integer_exp”的绝对值。  如果“integer_exp”为负数,则返回指定成员后面的成员,包括指定成员。 通常与时间维度配合使用

案例

1、lastPeriods(12,[2008/4月])

解释

1、返回 [2008/4月]前12个月

 

3.5             openingPeriod

原型

openingPeriod ( level [ , member ] )

说明

在指定级别上某一成员的子项当中,返回第一个同胞成员。 通常与时间维度配合使用

案例

1、openingPeriod([每日一览N].[日期].[日期].[月],[2008年])

解释

1、返回 [2008年]一月份

 

3.6             openingPeriod

原型

openingPeriod ( level [ , member ] )

说明

在指定级别上某一成员的子项当中,返回第一个同胞成员。 通常与时间维度配合使用

案例

1、openingPeriod([每日一览N].[日期].[日期].[月],[2008年])

解释

1、返回 [2008年]一月份

 

 

 

4        set functions

4.1             generate

原型

generate ( set_exp1 , set_exp2 [ , ALL ] )

说明

此函数为“set_exp1”中的每个成员计算“set_exp2”,然后合并成结果集。 如果指定了 ALL,则结果中保留重复值

案例

1、generate([每日一览N].[产品].[产品].[险类+],topCount(descendants(currentMember([每日一览N].[产品].[产品]),[每日一览N].[产品].[产品].[险种]), 2,[保单数量]))

解释

1、返回每个险类子成员[保单数量]排前的2项

 

4.2             nestedSet

原型

nestedSet ( set_expr1 , set_expr2 )

说明

返回在 set_expr1 当前成员的上下文中求得的一组 set_expr2 成员

案例

1、nestedSet(members([每日一览N].[产品].[产品].[险类+]),topCount(descendants(currentMember([每日一览N].[产品].[产品]),[每日一览N].[产品].[产品].[险种]), 2,[保单数量]))

解释

1、返回每个险类子成员[保单数量]排前的2项

 

4.3             filter

原型

filter ( set_exp , boolean_exp )

说明

返回按布尔条件过滤指定集后得出的集。 当且仅当“boolean_exp”的对应值为真时,结果中才包含每个成员

案例

1、filter([每日一览N].[产品].[产品].[险类+],[保单数量]>100000)

解释

1、返回[每日一览N].[产品].[产品].[险类+]中,[保单数量]>100000的所有项

 

4.4             item

原型

item ( set_exp , index )

说明

返回集中处于指定位置的成员。集的索引从零算起

案例

1、item([每日一览N].[产品].[产品].[险类+],3)

解释

1、返回[家财险]

 

4.5             set

原型

set ( member { , member } )

说明

返回表达式中定义的成员列表。 成员必须属于同一层级

案例

1、set([机动车辆保险],[企业财产保险],[工程保险])

解释

1、返回[机动车辆保险],[企业财产保险],[工程保险]

 

4.6             head

原型

head ( set_exp [ , index_exp ] )

说明

返回“set_exp”中的第一个要素“index_exp”。 “index_exp”的默认值为 1

案例

1、head([每日一览N].[产品].[产品].[险类+],3)

解释

1、返回[每日一览N].[产品].[产品].[险类+]前3个

 

4.7             tail

原型

tail ( set_exp [ , index_exp ] )

说明

返回“set exp”中最后的“index_exp”个要素。 “index_exp”的默认值为 1

案例

1、tail ([每日一览N].[产品].[产品].[险类+],3)

解释

1、返回[每日一览N].[产品].[产品].[险类+]后3个

 

4.8             subset

原型

subset ( set_exp, index_exp1 [ , index_exp2 ] )

说明

返回指定集中成员的子集,从“index_exp1”开始。 如果指定了计数“index_exp2”,则返回多个成员(如果存在)。 否则,将返回所有剩余成员

案例

1、subset([每日一览N].[产品].[产品].[险类+],2,5)

解释

1、返回[每日一览N].[产品].[产品].[险类+]第2+1个开始共5个项

 

4.9             members

原型

members ( hierarchy | level )

说明

返回层级或级别中的成员集。 如果返回层级中的成员,则结果中无法保证成员的顺序;要按某一个顺序列出成员,必须使用明确排序的函数(如 hierarchize)

案例

1、members([每日一览N].[产品].[产品].[险类+])

解释

1、返回[每日一览N].[产品].[产品].[险类+]所有成员

 

4.10       except

原型

except ( set_exp1 , set_exp2 [,ALL] )

说明

返回那些属于“set_exp1”但不属于“set_exp2”的成员。 只有当可选关键字“ALL”用作第三个自变量时,才会保留重复项

案例

1、except([每日一览N].[产品].[产品].[险类+],[企业财产保险])

解释

1、返回[每日一览N].[产品].[产品].[险类+]的成员,排除[企业财产保险]

 

4.11       order

原型

order ( set_exp , value_exp [ , ASC | DESC | BASC | BDESC ] )

说明

通过为指定集中的每个值计算“value_exp”而得出一组值,来排列指定集中的成员,并通过第三个参数进行修改。 有两种排序方法: 层级式(ASC 或 DESC)和非层级式(BASC 或 BDESC,此处 B 表示“打破层级”)。 层级式排序方法首先按照成员在层级中的位置来排列成员。 然后它根据“value_exp”排列每个成员的子项。 非层级式排序方法对集中的成员进行排序时不考虑层级。 如果没有明确指明,则默认为 ASC

案例

1、order(members([每日一览N].[产品].[产品].[险类+]),[保单数量],asc)

解释

1、返回[每日一览N].[产品].[产品].[险类+]的成员,按[保单数量]升序排列

 

4.12       hierarchize

原型

hierarchize ( set_exp )

说明

此函数用于对层级中某个集的成员进行排序。 在未指定其它排序条件时,级别中的成员按自然顺序(即成员在维度上的默认顺序)进行排列

案例

1、hierarchize(members([每日一览N].[产品].[产品].[险类+]))

解释

1、返回[每日一览N].[产品].[产品].[险类+]的成员,按自然排列

 

 

4.13       union

原型

union ( set_exp1 , set_exp2 [ , ALL ] )

说明

此函数返回“set_exp1”和“set_exp2”这两个集的并集。  只有当可选关键字“ALL”用作第三个自变量时,结果中才会保留重复项

案例

1、union(set([责任保险]),set([财产保险],[现金保险],[建筑工程一切险]))

解释

1、返回目标所有项

 

4.14       intersect

原型

intersect ( set_exp1 , set_exp2 [ , ALL ] )

说明

返回两个输入集的交集。 只有当可选关键字“ALL”用作第三个自变量时,结果中才会保留重复项

案例

1、intersect(set([机动车辆保险],[机动车辆保险摩托车、拖拉机保险],[商业楼宇财产综合险],[电厂财产保险一切险]),Members([每日一览N].[产品].[产品].[险种]))

解释

1、返回交集

 

4.15       except

原型

except ( set_exp1 , set_exp2 [,ALL] )

说明

返回那些属于“set_exp1”但不属于“set_exp2”的成员。 只有当可选关键字“ALL”用作第三个自变量时,才会保留重复项

案例

1、except(Members([每日一览N].[产品].[产品].[险种]),set([机动车辆保险],[机动车辆保险特种车保险],[机动车辆保险摩托车、拖拉机保险],[机动车提车险(暂保单)],[机动车提车险],[机动车交通事故责任强制保险]))

解释

1、返回除set_exp2所描述外的所有set_exp1成员

 

5        top and bottom functions

5.1             bottomCount

原型

bottomCount ( set_exp , index_exp , numeric_exp )

说明

此函数根据在"set_exp"的每个成员中算得的"numeric_exp"值对集进行排序,然后返回具有最小"index_exp"值的成员

案例

1、bottomCount([每日一览N].[产品].[产品].[险类+],9,[2008年])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[2008年]排列后9项

 

5.2             topCount

原型

topCount ( set_exp , index_exp , numeric_exp )

说明

此函数根据在“set_exp”的每个成员中算得的“numeric_exp”值对集进行排序,然后返回具有最大“index_exp”值的成员

案例

1、topCount([每日一览N].[产品].[产品].[险类+],9,[2008年])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[2008年]排列前9项

 

5.3             bottomPercent

原型

bottomPercent ( set_exp , numeric_exp1 , numeric_exp2 )

说明

此函数与 bottomSum 类似,但阈值是“numeric_exp1”占合计的百分数

案例

1、bottomPercent([每日一览N].[产品].[产品].[险类+],5,[保单数量])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比5%

 

5.4             bottomPercent

原型

bottomPercent ( set_exp , numeric_exp1 , numeric_exp2 )

说明

此函数与 bottomSum 类似,但阈值是“numeric_exp1”占合计的百分数

案例

1、bottomPercent([每日一览N].[产品].[产品].[险类+],5,[保单数量])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比5%

 

5.5             topPercent

原型

topPercent ( set_exp , numeric_exp1, numeric_exp2 )

说明

此函数与 topSum 类似,但阈值是“numeric_exp1”占合计的百分数

案例

1、topPercent([每日一览N].[产品].[产品].[险类+],50,[保单数量])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]占总量的百分比50%

 

5.6             bottomSum

原型

bottomSum ( set_exp , numeric_exp1 , numeric_exp2 )

说明

此函数根据在“set_exp”的相应成员中算得的“numeric_exp2”进行排序,然后挑选出累加合计值至少为“numeric_exp1”的最小项

案例

1、bottomSum([每日一览N].[产品].[产品].[险类+],50000,[保单数量])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]累计和至少为50000的最小项

 

5.7             topSum

原型

topSum ( set_exp , numeric_exp1 , numeric_exp2 )

说明

此函数根据在“set_exp”的相应成员中算得的“numeric_exp2”值进行排序,然后挑选出累加合计值至少为“numeric_exp1”的最大项

案例

1、topSum ([每日一览N].[产品].[产品].[险类+],50000,[保单数量])

解释

1、返回[每日一览N].[产品].[产品].[险类+]维度,按[保单数量]累计和至少为50000的最大项

 

6        value functions

6.1             completeTuple

原型

completeTuple ( member { , member } )

说明

与“tuple”相似,它根据指定成员(它们必须来自不同的维度)确定单元格位置(交集)。 不过,completeTuple 暗指包括自变量中未另外指定的所有维度的默认成员,而非当前成员。 此单元格的值可通过“value”函数求得

案例

1、completeTuple([机动车辆保险],[北京])

解释

1、返回[机动车辆保险]与[北京]交叉部分

 

6.2             Tuple

原型

tuple (  member { , member } )

说明

根据指定成员(它们必须来自不同的维度)确定单元格位置(交集)。 默认情况下,包括来自所有维度(而非自变量中指定维度)的当前成员。 如果在计算上下文时未指定维度的当前成员,假定为该维度的默认成员。 此单元格的值可通过“value”函数求得

案例

1、Tuple([机动车辆保险],[北京])

解释

1、返回[机动车辆保险]与[北京]交叉部分

 

6.3             value

原型

value ( tuple )

说明

返回由数组确定的单元格的值。请注意,度量维度的默认成员是默认度量

案例

1、value(tuple([机动车辆保险],[营销],[保单数量]))

解释

1、返回[机动车辆保险]与[北京]交叉部分[保单数量]值

 

6.4             caption

原型

caption ( level | member | set_exp )

说明

返回指定自变量的标题值

案例

1、caption([每日一览N].[产品].[产品].[险类+])

解释

1、返回[每日一览N].[产品].[产品].[险类+]名称列表

 

6.5             substring

原型

substring ( string_exp , integer_exp1 [ , integer_exp2 ] )

说明

返回 string_exp 的子字符串。该子字符串从 integer_exp1 位置开始连续 integer_exp2 个字符或者到 string_exp 的末尾(如果未指定 integer_exp2)。 string_exp 中的第一个字符处在位置 1

案例

1、substring(caption([每日一览N].[产品].[产品].[险类+]),3,5)

解释

1、返回[每日一览N].[产品].[产品].[险类+]名称的第3位起,最大5个字

 

6.6             roleValue

原型

roleValue ( string [ , member | set_exp ] )

说明

返回与指定上下文中的某一角色(其名称由“string”指定)相关联的属性值。只在一些特定情况下,第二个自变量是可选的,这时它可由其他上下文派生得出。应用程序通过按角色而非按查询项目 ID 来访问属性,可以灵活地在不同的数据源和模型之间切换。(对于按维度建模的关系数据源,应由建模者分配角色。)为所有数据源类型的成员定义的内蕴角色包括:“_businessKey”、“_memberCaption”、“_memberDescription”、“_memberUniqueName”

案例

1、roleValue('_businessKey',[每日一览N].[日期].[日期].[年])

解释

1、返回日期类似("2001-01-01","2001-12-31")

 

6.7             ordinal

原型

ordinal ( level )

说明

返回指定级别的序数值(表示与根级别的距离,从零算起)

案例

1、ordinal(level(CurrentMember([每日一览N].[产品].[产品])))

解释

1、返回0

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值