cognos10函数介绍(中文含示例)

浏览: 2975

常用函数

abs ( 数字型表达式 )

返回“数字型表达式”的绝对值。负值作为正值返回。

例如: abs ( 15 )

结果:15

例如: abs ( -15 )

结果:15

 

cast ( 表达式 , 数据类型规范 )

将“表达式”转换为指定的数据类型。某些数据类型允许指定长度和精度。确保目标的类型和大小适当。可将以下各项用于“数据类型规范”: 字符、可变字符、char、数字、小数、整数、小整数、实数、浮点、日期、时间、时间戳、带有时区的时间、带有时区的时间戳以及时间间隔。类型转换为时间间隔类型时,必须指定以下一种时间间隔限定符: 对于“年到月”时间间隔数据类型,指定年、月或年到月;对于“日到秒”时间间隔数据类型,指定日、小时、分、秒、日到小时、日到分、日到秒、小时到分、小时到秒或分到秒。
注意:
将时间戳类型的值转换为日期类型时,时间戳值的时间部分会被忽略。
将时间戳类型的值转换为时间类型时,时间戳的日期部分会被忽略。
将日期类型的值转换为时间戳类型时,时间戳的时间部分会被设置为零。
将时间类型的值转换为时间戳类型时,日期部分会被设置为当前系统日期。
将某种时间间隔数据类型转换为其它类型是无效的 (例如,因为某月的天数是不一样的)。请注意,您仅可以指定前导限定符的位数,例如,年(4) 到月、日(5)。
如果目标类型和大小与源类型和大小不匹配,将会报告错误。
 

 

例如: cast ( '123' , 整数 )

结果:123

 

例如: cast ( 12345 , 可变字符 ( 10 ) )

结果:包含 12345 的字符串

 

ceil ( 数字型表达式 )

返回大于或等于“数字型表达式”的最小整数。

 

ceiling ( 数字型表达式 )

返回大于或等于“数字型表达式”的最小整数。

例如: ceiling ( 4.22 )

结果:5

例如: ceiling ( -1.23 )

结果:-1

 

char_length ( 字符串型表达式 )

返回“字符串型表达式”中包含的逻辑字符数。在东亚的某些地区,逻辑字符数可能与字节数不同。

例如: char_length ( 'Canada' )

结果:6

 

character_length ( 字符串型表达式 )

返回“字符串型表达式”包含的字符数。

例如: character_length ( 'Canada' )

结果:6

 

coalesce ( 表达式列表 )

返回第一个非空参数 (或者如果所有参数都为 NULL,则返回 NULL)。“表达式列表”中需要两个或更多参数。

coalesce ( [单价], [销售单价] )

结果: 返回单价,或者如果单价为 NULL,则返回销售单价。

 

current_date

返回运行数据库软件的计算机上的当前日期。

例如:current_date

结果:2003-03-04

 

current_time

返回一个带有时区值的时间,表示运行数据库软件的计算机的当前时间 (如果数据库支持此功能)。否则,它表示运行 IBM® Cognos® BI 软件的计算机的当前时间。

例如:current_time

结果: 16:33:11+05:00

 

current_timestamp

返回一个带有时区值的日期时间,表示运行数据库软件的计算机的当前时间 (如果数据库支持此功能)。否则,它表示运行 IBM® Cognos® BI 软件的计算机的当前时间。

例如:current_timestamp

结果: 2003-03-03 16:40:15.535000+05:00

 

exp ( 数字型表达式 )

返回“e”的“数字型表达式”次幂。常数“e”是自然对数的底数。

例如: exp ( 2 )

结果:7.389056

 

extract ( 日期部分 , 日期时间型表达式 )

返回一个整数,表示“日期时间型表达式”中的日期部分值 (年、月、日、时、分和秒)。

例如: extract ( 年 , 2003-03-03 16:40:15.535 )

结果:2003

例如: extract ( 小时 , 2003-03-03 16:40:15.535 )

结果:16

 

floor ( 数字型表达式 )

返回小于或等于“数字型表达式”的最大整数。

例如: floor ( 3.22 )

结果:3

例如: floor ( -1.23 )

结果:-2

 

ln ( 数字型表达式 )

返回“数字型表达式”的自然对数。

例如: ln ( 4 )

结果:1.38629

 

localtime

返回一个时间值,表示运行数据库软件的计算机的当前时间。

示例:localtime

结果:16:33:11

 

localtimestamp

返回一个日期时间值,表示运行数据库软件的计算机的当前时间戳。

示例:localtimestamp

结果:2003-03-03 16:40:15.535000

 

lower ( 字符串型表达式 )

返回已将所有大写字符转换为小写字符的“字符串型表达式”。

例如: lower ( 'ABCDEF' )

结果: abcdef

 

mod ( 整数型表达式1, 整数型表达式2 )

返回“整数型表达式1”除以“整数型表达式2”所得的余数 (模数)。“整数型表达式2”不能为零,否则会出现异常情况。

例如: mod ( 20 , 3 )

结果:2

 

nullif ( 表达式1 , 表达式2 )

如果“表达式1”等于“表达式2”,则返回 NULL,否则返回“表达式1”。

 

octet_length ( 字符串型表达式 )

返回“字符串型表达式”包含的字节数。

例如: octet_length ( 'ABCDEF' )

结果:6

例如: octet_length ( '' )

结果:0

 

position ( 字符串型表达式1 , 字符串型表达式2 )

返回表示“字符串型表达式1”在“字符串型表达式2”中起始位置的整数值,或者在未找到“字符串型表达式1”时返回零。

例如: position ( 'C' , 'ABCDEF' )

结果:3

例如: position ( 'H' , 'ABCDEF' )

结果:0

 

power ( 数字型表达式1 , 数字型表达式2 )

返回“数字型表达式1”的“数字型表达式2”次幂。如果“数字型表达式1”是负数,则“数字型表达式2”的结果必须为整数值。

例如: power ( 3 , 2 )

结果:9

 

_round ( 数字型表达式 , 整数型表达式 )

返回四舍五入到小数点后“整数型表达式”位的“数字型表达式”。
注意:“整数型表达式”必须为非负整数。会在应用数据格式化前进行四舍五入。

例如: _round ( 1220.42369, 2 )

结果:1220.42

 

sqrt ( 数字型表达式 )

返回“数字型表达式”的平方根。“数字型表达式”必须是非负数。

例如: sqrt ( 9 )

结果:3

 

substring ( 字符串型表达式 , 整数型表达式1 [ , 整数型表达式2 ] )

返回“字符串型表达式”的子字符串,该子字符串的起始位置是“整数型表达式1”,且包含“整数型表达式2”个字符,或者到“字符串型表达式”的末尾 (如果忽略“整数型表达式2”)。“字符串型表达式”中的第一个字符处在位置 1。

例如: substring( 'abcdefg' , 3 , 2 )

结果: cd

 

trim ( [ [ 尾随|前导|尾随和前导 ] [ 匹配字符表达式 ] , ] 字符串型表达式 )

返回截去前导和尾随空格的“字符串型表达式”,或者返回截去“匹配字符表达式”指定的某些字符的“字符串型表达式”。如果未指定第一个参数,则默认为“尾随和前导”,如果未指定第二个参数,则默认为空白。

 

例如: trim ( 尾随 'A' , 'ABCDEFA' )

结果: ABCDEF

例如: trim ( 尾随和前导 , ' ABCDEF ' )

结果: ABCDEF

 

upper ( 字符串型表达式 )

返回已将所有小写字符转换为大写字符的“字符串型表达式”。

例如: upper ( 'abcdef' )

结果: ABCDEF

 

维度函数

 

ancestor ( 成员, 级别|整数 )

返回处于“级别”的“成员”的祖项,或返回比“成员”高“整数”级的“成员”的祖项。
注意: 当存在多个此类祖项时,结果可能不一致。

例如: ancestor ( [TrailChef 水袋] , 1 )

结果: 炊事用具

例如: ancestor ( [TrailChef 水袋] , 2 )

结果: 露营装备

例如: ancestor ( [TrailChef 水袋] , [大型户外设备公司].[产品].[产品].[产品类型] )

结果: 炊事用具

 

ancestors ( 成员 , 级别|索引 )

返回在“级别”上的“成员”或高于该成员“索引”距离的所有祖项。(在指定级别上,大多数数据源只支持一个祖项。如果数据源支持多个祖项,则结果为成员集。)

例如: ancestors ( [TrailChef 水袋] , 1 )

结果: 炊事用具

例如: ancestors ( [TrailChef 水袋] , 2 )

结果: 露营装备

例如: ancestors ( [TrailChef 水袋] , [大型户外设备公司].[产品].[产品].[产品类型] )

结果: 炊事用具

 

bottomCount ( 集表达式 , 索引表达式 , 数字型表达式 )

根据在“集表达式”的每个成员中算得的“数字型表达式”值对集进行排序,然后返回具有最小“索引表达式”值的成员。

例如: bottomCount ( [大型户外设备公司].[产品].[产品].[产品系列] , 2 , [收入] )

结果: 返回集中按收入排名后两位的成员。

产品系列 收入
户外防护用品 $3,171,114.92
登山装备 $20,891,350.60

 

bottomPercent ( 集表达式 , 数字型表达式1 , 数字型表达式2 )

根据在“集表达式”的相应成员中算得的“数字型表达式2”的值进行排序,然后挑选出累加合计值至少为或少于总计的“数字型表达式1”百分比的最底部要素。

例如: bottomPercent ( set ( [露营装备] , [高尔夫装备] , [登山装备] ) , 40 , [2006] )

结果: 对于露营装备、高尔夫装备和登山装备集,返回百分比总计小于或等于 2006 的 40% 的成员。

 

bottomSum ( 集表达式 , 数字型表达式1 , 数字型表达式2 )

根据在“集表达式”的相应成员中算得的“数字型表达式2”值进行排序,然后挑选出累加合计值至少为或少于“数字型表达式1”的最底部要素。

例如: bottomSum ( members ( [大型户外设备公司].[产品].[产品].[产品系列] ) , 6000000 , tuple( [2006] , [大型户外设备公司].[度量].[毛利润] ) )

 

caption ( 级别|成员|集表达式 )

返回“级别”、“成员”或“集表达式”的标题值。标题是要素的字符串显示名称,不必与用来生成要素的业务键或成员唯一名称 (MUN) 的独特标识符相匹配。标题不必是唯一的;例如,月的标题可以返回月名称,而没有进一步的年份详细信息来将该值唯一化。

例如: caption ( [TrailChef 水袋] )

结果: Trailchef 水袋

例如: caption ( [大型户外设备公司].[产品].[产品].[产品系列] )

结果: 返回产品系列集的标题值。

露营装备
登山装备
个人附件
户外防护用品
高尔夫装备

 

children ( 成员 )

返回指定成员的子集。

例如: children ( [露营装备] )

结果: 返回露营装备的子集。

炊事用具
帐篷
睡袋
背包
手提灯

 

closingPeriod ( 级别 [ , 成员 ] )

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

例如: closingPeriod ( [大型户外设备公司].[年].[年].[月] )

结果: 2006/Dec

例如: closingPeriod ( [大型户外设备公司].[年].[年].[年] )

结果: 2006

例如: closingPeriod ( [大型户外设备公司].[年].[年].[月] , [2006 Q 4] )

结果: 2006/Dec

 

cousin ( 成员1 , 成员2 )

返回“成员2”的子项,该子项在“成员2”下面的相对位置与“成员1”与其父项的相对位置相同。此函数显示在 GO 数据仓库 (分析) 数据包的 2005 年收入 (按 GO 子公司)示样报表中。

例如: cousin ( [铁杆] , [露营装备] )

结果: 炊事用具

例如: cousin ( [推杆] , [露营装备] )

结果: 睡袋

 

completeTuple ( 成员 { , 成员 } )

根据指定成员 (它们必须来自不同的维度) 确定单元格位置 (交集)。不过,completeTuple () 暗指包括参数中未另外指定的所有维度的默认成员,而非当前成员。如果没有在 CompleteTuple 函数中定义当前度量,则 CompleteTuple 会在查询中使用默认度量而非当前度量。此函数显示在 GO 数据仓库 (分析) 数据包的计划员工人数示样报表中。

例如: completeTuple ( [登山装备] , [传真] )

结果: completeTuple 不会像数组函数一样默认选择当前成员。第一列中的值在每一年中都是相同的,因为使用的是年维度的默认成员 (根成员),而非当前成员。同样,第一列显示的将是收入而非销售数量,因为收入度量是度量维度的默认度量。如果没有在 CompleteTuple 函数中定义当前度量,则 CompleteTuple 会在查询中使用默认度量而非当前度量。

销售数量 传真登山装备销售额
2004 $1,220,329.38
2005 $1,220,329.38
2006 $1,220,329.38

例如: completeTuple ( [登山装备] , [传真] , [销售数量] , currentMember ( [大型户外设备公司].[年].[年] ) )

结果: completeTuple 函数使用年维度的当前成员以及销售数量度量。

销售数量 传真登山装备销售额
2004 0
2005 8,746
2006 7,860

 

currentMember ( 层级 )

返回迭代过程中某个层级的当前成员。如果“层级”不在所计算的表达式的上下文中,则假定为其默认成员。此函数显示在卷动和移动平均值互动式示样报表中。

 

defaultMember ( 层级 )

返回“层级”的默认成员。

例如: defaultMember ( [大型户外设备公司].[产品].[产品] )

结果: 产品

例如: defaultMember ( [大型户外设备公司].[年].[年] )

结果: 年

例如: defaultMember ( hierarchy ( [大型户外设备公司].[度量].[销售数量] ) )

结果: 收入

 

descendants ( 成员|集表达式 , 层级|距离 [ , { 自身|之前|在成员之后|之后 } ] )

返回级别 (限定名称) 上或与根相距“距离”(整数 0..n) 的“成员”或“集表达式”的子项集。可以指定多个选项 (用空格隔开) 以确定要返回的成员。
self: 只有指定级别的成员才会包含在最终集中 (未指定任何选项时,这是默认行为)。
before: 如果成员级别与指定级别之间存在任何中间级别,则会包含这些级别中的成员。如果指定级别与应用该函数的成员处于同一级别,则成员包含在最终集中。
beforewithmember: 如果成员级别与指定级别之间存在任何中间级别,则会包含这些级别中的成员。应用该函数的成员也会包含在最终集中。
after: 如果指定级别的后面还存在其它级别,则这些级别的成员会包含在最终集中。此函数显示在 GO 数据仓库 (分析) 数据包的中欧销售佣金示样报表中。

 

例如: descendants ( [大型户外设备公司].[产品].[产品].[产品] , [大型户外设备公司].[产品].[产品].[产品类型] )

结果: 返回产品类型级别上的产品集的子项集。
注意: [大型户外设备公司].[产品].[产品].[产品] 是产品层级的根成员。

炊事用具
睡袋
背包
帐篷
...
眼睛
小刀
手表

例如: descendants ( [大型户外设备公司].[产品].[产品].[产品] , 1 )

结果: 返回第一级产品集的子项集。

露营装备
高尔夫装备
登山装备
户外防护用品
个人附件

例如: descendants ( [大型户外设备公司].[产品].[产品].[产品] , 3 , 之前 )

结果: 返回第三级别之前的产品集的子项。

露营装备
炊事用具
睡袋
背包
帐篷
...
眼睛
小刀
手表

例如: descendants ( [大型户外设备公司].[产品].[产品].[产品] , 2 , 自身之前 )

结果: 返回第二级别之前 (包括第二级别) 的产品集的子项集。

露营装备
炊事用具
睡袋
背包
帐篷
...
眼睛
小刀
手表

 

except ( 集表达式1 , 集表达式2 [ , 全部 ] )

返回属于“集表达式1”但不属于“集表达式2”的成员。只有当可选关键字“全部”用作第三个参数时,才会保留重复项。

例如: except ( set ( [露营装备] , [登山装备] ) , set ( [露营装备] , [高尔夫装备] ) )

结果: 登山装备

 

filter ( 集表达式 , 布尔表达式 )

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

例如: filter ( [产品系列] , [毛利润] > .30 )

结果: 登山装备

 

firstChild ( 成员 )

返回“成员”的第一个子项。

例如: firstChild ( [按产品系列] )

结果: 露营装备

例如: firstChild ( [露营装备] )

结果: 炊事用具

 

firstSibling ( 成员 )

返回“成员”父项的第一个子项。

例如: firstSibling ( [户外防护用品] )

结果: 露营装备

例如: firstSibling ( [露营装备] )

结果: 露营装备

 

_format ( 表达式 , 格式关键字  )

将格式与表达式关联。格式关键字可以是 PERCENTAGE_0、PERCENTAGE_1 或 PERCENTAGE_2。PERCENTAGE_1 返回小数点后有一位数字的百分数,PERCENTAGE_2 返回小数点后有两位数字的百分数,PERCENTAGE_3 返回小数点后有三位数字的小于 1 的百分值 (例如 0.965)。

例如: _format ( [销售单价] / [单价] , PERCENTAGE_2 )

结果: 75.12%

 

emptySet ( 层级 )

返回“层级”的空成员集。此集最常用作开发过程或动态报表设计中的占位符 (使用 IBM® Cognos® SoftwareDevelopment Kit 或通过报表设计)。通过创建包含空集函数的数据项,即可构建复杂的表达式,并且稍后可通过重新定义空集数据项来修订该表达式。

例如: except ( [大型户外设备公司].[产品].[产品].[产品系列] , emptyset ( [大型户外设备公司].[产品].[产品] ) )

结果: 返回产品系列集以及产品集的空集。

露营装备
高尔夫装备
登山装备
户外防护用品
个人附件

 

generate ( 集表达式1 , 集表达式2 [ , 全部 ] )

为“集表达式1”中的每个成员计算“集表达式2”,然后合并成结果集。只有当可选关键字“全部”用作第三个参数时,结果中才会保留重复项。

例如: generate ( [产品系列] , topCount ( descendants( currentMember ( [大型户外设备公司].[产品].[产品] ) ,  [大型户外设备公司].[产品].[产品].[产品名称] ) , 2 , [收入] ) )

结果: 返回每种产品系列按收入排名前两位的产品。

 

head ( 集表达式 [ , 索引表达式 ] )

返回“集表达式”中的最前面的“索引表达式”个要素。“索引表达式”的默认值为 1。

例如: head ( members ( [大型户外设备公司].[产品].[产品].[产品系列] ) )

结果: 露营装备

例如: head ( members ( [大型户外设备公司].[产品].[产品].[产品系列] ) , 2 )

结果: 返回产品系列集中排名前两位的成员。

露营装备
登山装备

 

hierarchize ( 集表达式 )

对层级中“集表达式”的成员进行排序。级别中的成员按自然顺序进行排列。其是在未指定其他排序条件时,成员在维度上的默认顺序。

例如: hierarchize ( set ( [高尔夫装备] , [登山装备] , [露营装备] ) )

结果: 返回露营装备、高尔夫装备、登山装备。

 

hierarchy ( 级别|成员|集表达式 )

返回包含“级别”、“成员”或“集表达式”的层级。

例如: hierarchy ( [炊事用具] )

结果: 返回包含炊事用具的层级中的每位成员。

产品
露营设备
炊事用具
TrailChef 水袋
TrailChef 饭盒
...
Mountain Man 极品
Mountain Man 豪华式手表

例如: hierarchy ( [大型户外设备公司].[产品].[产品].[产品系列] )

结果: 返回包含产品系列的层级中的每位成员。

产品
露营设备
炊事用具
TrailChef 水袋
TrailChef 饭盒
...
Mountain Man 极品
Mountain Man 豪华式手表

 

intersect ( 集表达式1 , 集表达式2 [ , 全部 ] )

返回“集表达式1”和“集表达式2”的交集。只有当可选关键字“全部”用作第三个参数时,结果中才会保留重复项。

例如: intersect ( set ( [露营装备] , [登山装备] ) , set ( [露营装备] , [户外防护用品] , ) , 全部 )

结果: 露营装备

 

item ( 集表达式 , 索引 )

返回“集表达式”中处于“索引”位置的成员。集的索引从零算起。

例如: item ( 子项 ( [露营装备] ) , 2 )

结果: 睡袋

 

lag ( 成员 , 索引表达式 )

返回排在“成员”之前的“索引表达式”位置数的同胞成员。

例如: lag ( [帐篷] , 1 )

结果: 炊事用具

例如: lag ( [帐篷] , -2 )

结果: 背包

 

lastChild ( 成员 )

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

例如: lastChild ( 炊事用具 )

结果: TrailChief 器具

例如: lastChild ( [按产品系列] )

结果: 高尔夫装备

 

lastPeriods ( 整数型表达式 , 成员 )

返回同一级别中以“成员”结尾的成员集。返回的成员数是“整数型表达式”的绝对值。如果“整数型表达式”为负数,则返回指定成员后面的成员 (包括指定成员)。通常与时间维度配合使用。此函数显示在卷动和移动平均值互动式示样报表中。

例如: lastPeriods ( 2 , [2006 Q 4] )

结果: 返回级别中以 2006 Q 4 结尾最后两个成员。

2006 Q 3
2006 Q 4

例如: lastPeriods ( -3 , [2006 Q 4] )

结果: 返回以 2006 Q 4 开头的级别的最后三个成员。

2006 Q 4
2007 Q 1
2007 Q 2

 

lastSibling ( 成员 )

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

例如: lastSibling ( [露营装备] )

结果: 高尔夫装备

 

lead ( 成员 , 索引表达式 )

返回排在“成员”之后的“索引表达式”位置数的同胞成员。如果“索引表达式”为负,则返回排在“成员”之前的“索引表达式”位置数的同胞成员。

例如: lead ( [户外防护用品] , 1 )

结果: 个人附件

例如: lead ( [户外防护用品] , -2 )

结果: 高尔夫装备

 

level ( 成员 )

返回“成员”的级别。

例如: level ( [高尔夫装备] )

结果: 返回高尔夫装备级别上的成员。

露营装备
登山装备
个人附件
户外防护用品
高尔夫装备

 

levels ( 层级 , 索引 )

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

例如: levels ( [大型户外设备公司].[产品].[产品] , 2 )

结果: 返回距根“产品”层级两个级别处的成员。

炊事用具
睡袋
背包
帐篷
...
铁杆
推杆
木杆
高尔夫附件

例如: levels ( [大型户外设备公司].[产品].[产品] , 1 )

结果: 返回距根“产品”层级一个级别处的成员。

露营装备
登山装备
个人附件
户外防护用品
高尔夫装备

 

linkMember ( 成员 , 级别|层级 )

返回“级别”或“层级”(在同一维度内) 上的相应成员。对于基于级别的层级,必须将一个级别指定为第二个参数,而对于父子层级,则必须指定一个层级。当第二个参数无法解析为成员的维度所属的层级时,将出现例外。请注意,不支持将已计算的成员作为第一个参数。

 

members ( 层级|级别 )

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

例如: members ( [大型户外设备公司].[年].[年] )

结果: 返回年成员。

例如: members ( [大型户外设备公司].[产品].[产品].[产品系列] )

结果: 返回产品系列成员。

 

nextMember ( 成员 )

返回“成员”级别中的下一个成员。

例如: nextMember ( [户外防护用品] )

结果: 高尔夫装备

 

openingPeriod ( 级别 [ , 成员 ] )

返回“级别”上某一成员的子项中的第一个同胞成员。此函数通常与时间维度配合使用。

例如: openingPeriod ( [大型户外设备公司].[年].[年].[月] )

结果: 2004/Jan

例如: openingPeriod ( [大型户外设备公司].[年].[年].[年] )

结果: 2004

例如: openingPeriod ( [大型户外设备公司].[年].[年].[月],[2006 Q 4] )

结果: 2006/Oct

 

order ( 集表达式 , 值表达式 [ , ASC|DESC|BASC|BDESC ] )

根据成员的“值表达式”和第三个参数排列“集表达式”的成员。ASC 和 DESC 分别按照成员在集层级中的位置对成员按升序或降序排列。然后根据“值表达式”安排每个成员的子项。BASC 和 BDESC 安排集中的成员,与层级无关。如果没有明确指明,则默认为 ASC。

例如: order ( members ( [大型户外设备公司].[产品].[产品].[产品类型] ) , [销售数量] , BASC )

结果: 返回每种产品类型的销售数量,无先后顺序。

产品系列 数量
木杆 13,924
铁杆 14,244
安全设备 22,332
... ...
遮光剂 215,432
驱虫剂 270,074
手提灯 345,096

例如: order ( members ( [大型户外设备公司].[产品].[产品].[产品类型] ) , [销售数量] , ASC )

结果: 按升序返回每种产品类型的销售数量。

产品系列 数量
木杆 13,924
铁杆 14,244
推杆 23,244
... ...
帐篷 130,664
炊事用具 198,676
手提灯 345,096

 

ordinal ( 级别 )

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

例如: ordinal ( [大型户外设备公司].[产品].[产品].[产品系列] )

结果: 1

例如: ordinal ( [大型户外设备公司].[产品].[产品].[产品类型] )

结果: 2

 

parallelPeriod ( 级别 [ , 整数型+表达式 [ , 成员 ] ] )

返回先前时段中与“成员”具有相同相对位置的成员。此函数与同胞函数类似,但与时序的关系更为密切。该函数先得出在“级别”上的“成员”的祖项 (称为“祖项”),然后得出与“祖项”相距“整数型表达式”个位置的“祖项”同胞,并返回该同胞的子项中“成员”的平行时段。如果未指定,“整数型表达式”默认值为 1,“成员”的默认值为当前成员。

例如: parallelPeriod ( [大型户外设备公司].[年].[年].[季] , -1 , [2006/8 月] )

结果: 2006/Nov

例如: parallelPeriod ( [大型户外设备公司].[年].[年].[季] , 1 , [2006/8 月] )

结果: 2006/May

例如: parallelPeriod ( [大型户外设备公司].[年].[年].[年] , 2 , [2006/8 月] )

结果: 2004/Aug

 

parent ( 成员|度量 )

返回“成员”或“度量”的父项成员。

例如: parent ( [炊事用具] )

结果: 露营装备

 

periodsToDate ( 级别 , 成员 )

返回与“成员”处于同一级别且受“级别”限制的同胞成员集。它先查找在“级别”上的“成员”的祖项,然后返回该祖项中与“成员”处于同一级别的子项 (直到包括“成员”)。通常与时间维度配合使用。此函数显示在卷动和移动平均值互动式示样报表中。

例如: periodsToDate ( [大型户外设备公司].[年].[年].[年] , [2004/3 月] )

结果: 返回 [2004/1 月]、[2004/2 月]、[2004/3 月] 的值

 

prevMember ( 成员 )

返回同一级别中直接排在“成员”前面的成员。此函数显示在 GO 数据仓库 (分析) 数据包的逐年销售额增长示样报表中。

例如: prevMember ( [户外防护用品] )

结果: 个人附件

例如: prevMember ( [2005] )

结果: 2004

 

member ( 值表达式 [ , 字符串1 [ , 字符串2 [ , 层级 ] ] ] )

根据“层级”中的“值表达式”定义成员。“字符串1”指定此函数创建的成员。它必须在查询中是唯一的,并且与同一层级中的其他任何成员都不同。“字符串2”为成员的标题;如果不指定,则标题为空。为了确保结果可预测,建议您提供“层级”。
注意: 如果所有计算均用作分组项,并且这些分组项的同胞项为其它计算或成员集,则所有计算均应通过此函数明确分配给某一层级。否则结果会无法预测。唯一的例外是,如果计算仅涉及同一层级的同胞成员,则不必分配。在这种情况下,假定计算属于该层级。

例如: member ( total ( 集过滤器内部的当前度量 ( [大型户外设备公司].[产品].[产品].[产品名称] , caption ( [大型户外设备公司].[产品].[产品].[产品名称] ) 以字母 'B' 开头 ) ) , 'B产品' , 'B 产品' , [大型户外设备公司].[产品].[产品] )

结果: 返回以字母 B 开头的所有产品的销售数量和收入。

 

nestedSet ( 集表达式1 , 集表达式2 )

返回在“集表达式1”当前成员的上下文中求得的一组“集表达式2”成员。

例如: nestedSet ( members ([产品系列] ) , topCount ( descendants( 当前成员 ( [大型户外设备公司].[产品].[产品] ) , [大型户外设备公司].[产品].[产品].[产品名称] ) , 2 , [收入] ) )

结果: 返回每种产品系列按收入排名前两位的产品。

 

set ( member { , 成员 } )

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

例如: set ( [高尔夫装备] , [铁杆] , [TrailChef 水杯] )

结果: 返回高尔夫装备、铁杆和 TrailChef 水杯。

 

siblings ( 成员 )

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

例如: siblings ( [高尔夫装备] )

结果: 返回高尔夫装备的同胞。

露营装备
高尔夫装备
登山装备
户外防护用品
个人附件

 

tail ( 集表达式 [ , 索引表达式 ] )

返回“集表达式”中最后的“索引表达式”个要素。“索引表达式”的默认值为 1。

例如: tail (members ( [大型户外设备公司].[产品].[产品].[产品系列] ) )

结果: 返回系列产品集的最后一个成员。

个人附件

例如: tail ( members ( [大型户外设备公司].[产品].[产品].[产品系列] ) , 2 )

结果: 返回产品线集中的最后两位成员。

户外防护用品
个人附件

 

 

topCount ( 集表达式 , 索引表达式 , 数字型表达式 )

根据在“集表达式”的每个成员中算得的“数字型表达式”值对集进行排序,然后返回具有最大“索引表达式”值的成员。

例如: topCount ( [大型户外设备公司].[产品].[产品].[产品系列] , 2 , [收入] )

结果: 返回产品系列集中按收入排名前两位的成员。

产品系列 收入
露营装备 $89,713,990.92
个人附件 $31,894,465.86

 

topPercent ( 集表达式 , 数字型表达式1 , 数字型表达式2 )

根据在“集表达式”的相应成员中算得的“数字型表达式2”的值进行排序,然后挑选出累加合计值至少为总计的“数字型表达式1”百分比的最顶部要素。

例如: topPercent ( set ( [露营装备] , [高尔夫装备] , [登山装备] ) , 40 , [2006] )

结果: 对于露营装备、高尔夫装备和登山装备集,返回百分比总计大于或等于 2006 的 40% 的成员。

 

topSum ( 集表达式 , 数字型表达式1 , 数字型表达式2 )

根据在“集表达式”的相应成员中算得的“数字型表达式2”值进行排序,然后挑选出累加合计值至少为“数字型表达式1”的最顶部要素。

例如: topSum ( children ( [产品] ) , 16000000 , tuple( [2006] , [大型户外设备公司].[度量].[毛利润] ) )

 

tuple (  member { , 成员 } )

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

例如: tuple ( [登山装备] , [传真] )

结果: 通过传真返回登山装备销售额

 

union ( 集表达式1 , 集表达式2 [ , 全部 ] )

返回“集表达式1”和“集表达式2”的数据。只有当可选关键字“全部”用作第三个参数时,结果中才会保留重复项。

 

例如: union ( set ( [露营装备] , [高尔夫装备] ) , set ( [高尔夫装备] , [登山装备] ) )

结果: 返回两个集的数据作为一个新集,高尔夫装备列仅显示一次。

例如: union ( set ( [露营装备] , [高尔夫装备] ) , set ( [高尔夫装备] , [登山装备] ) , 全部 )

结果: 返回两个集的数据作为一个新集,高尔夫装备列显示两次。

 

roleValue ( 字符串 [ , 成员|集表达式 ] )

返回与指定上下文中的某一角色 (其名称由“字符串”指定) 相关联的属性值。只在一些特定情况下,“成员”或“集表达式”是可选的,这时它可由其他上下文派生得出。应用程序通过按角色而非按查询项目 ID 来访问属性,可以灵活地在不同的数据源和模型之间切换。对于按维度建模的关系 (DMR) 数据源,应由建模者分配角色。为所有数据源类型的成员定义的内蕴角色包括:“_业务键”、“_成员标题”、“_成员描述”、“_成员唯一名称”。可以在 Framework Manager 中为层级的每个级别定义其他角色。例如,产品类型级别可包含名为“类型集装箱”的属性列,并且该产品级别可能包含“产品集装箱”属性。其中每个属性都可在 Framework Manager 中分配一个名为“容器”的自定义角色。然后可以使用角色值函数引用该属性,而与真实列名无关。

例如: roleValue ( '_成员标题' , [销售额].[产品].[产品].[产品系列] -> [全部].[1] )

结果:露营装备

例如: roleValue ( '_业务键' , [大型户外设备公司].[年].[年].[年] )

结果: 返回与业务键角色相关联的属性值。

("2004-01-01","2004-12-31")
("2005-01-01","2005-12-31")
("2006-01-01","2006-12-31")

例如: roleValue ( '_成员唯一名称' , [大型户外设备公司].[年].[年].[年] )

结果: 返回与 MUN 角色相关联的属性值。

[大型户外设备公司].[年].[年].[年] ->:[PC].[年 (根)].[20040101-20041231] [大型户外设备公司].[年].[年].[年] ->:[PC].[年 (根)].[20050101-20051231] [大型户外设备公司].[年].[年].[年] ->:[PC].[年 (根)].[20060101-20061231]

 

rootMember ( 层级 )

返回单根层级的根成员。此函数显示在 GO 数据仓库 (分析) 数据包的促销成就示样报表中。

 

rootMembers ( 层级 )

返回层级的根成员。

例如: rootMembers ( [大型户外设备公司].[年].[年] )

结果: 按时间

 

subset ( 集表达式, 索引表达式1 [ , 索引表达式2 ] )

返回“集表达式”中成员的子集,从“索引表达式1”开始。如果指定了计数“索引表达式2”,则返回多个成员 (如果有)。否则,将返回所有剩余成员。

例如: subset ( 成员 ( [大型户外设备公司].[产品].[产品].[产品系列] ) , 2 )

结果: 返回产品系列集的成员,从第二个成员开始。

登山装备
户外防护用品
个人附件

例如: subset ( 成员 ( [大型户外设备公司].[产品].[产品].[产品系列] ) , 2 , 2 )

结果: 返回产品系列集的两个成员,从第二个成员开始。

登上装备
户外防护用品

 

unique ( 集表达式 )

删除“值表达式”中的所有重复项。剩余的成员保持原来的顺序。

 

value ( 数组 )

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

例如: value ( tuple ( [大型户外设备公司].[年].[年].[年] ->:[PC].[年 (根)].[20040101-20041231] , [大型户外设备公司].[度量].[收入] ) )

结果: $34,750,563.50

例如: value ( tuple ( [2004] , [露营装备] , [收入] ) )

结果: $20,471,328.88


文档下载

推荐 2
本文由 esansab 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册