【2017年整理】BIEE分析及报表函数使用详解

上传人:鲁** 文档编号:977803 上传时间:2017-05-24 格式:DOCX 页数:35 大小:200.75KB
返回 下载 相关 举报
【2017年整理】BIEE分析及报表函数使用详解_第1页
第1页 / 共35页
【2017年整理】BIEE分析及报表函数使用详解_第2页
第2页 / 共35页
【2017年整理】BIEE分析及报表函数使用详解_第3页
第3页 / 共35页
【2017年整理】BIEE分析及报表函数使用详解_第4页
第4页 / 共35页
【2017年整理】BIEE分析及报表函数使用详解_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《【2017年整理】BIEE分析及报表函数使用详解》由会员分享,可在线阅读,更多相关《【2017年整理】BIEE分析及报表函数使用详解(35页珍藏版)》请在金锄头文库上搜索。

1、常见 BIEE 分析及报表函数使用详解系统中目前存在预制的标准函数,使用现有函数将有助于您更好的完成复杂格式和逻辑的报表。1. 聚合函数1. AGGREGATE AT此函数根据指定的级别聚合列。使用 AGGREGATE AT 可确保始终在关键字 AT 之后指定的级别执行度量聚合,而无论 WHERE 子句如何语法AGGREGATE(expr AT level , level1, levelN)其中:expr 是至少引用一个度量列的任何表达式。level 是要在其中聚合的级别。您可以选择性地指定多个级别。AGGREGATE(基础项.预算金额 AT 时间.时间层次.年)要使用级别,就需要使用 时间层

2、次2. AVG此函数计算结果集中表达式的平均值。它必须采用数值表达式作为参数。语法AVG(numExpr by Expr)其中:numExpr 是求值结果为数值的任何表达式。Expr 是维度列,可以设置 AVG 的范围如 AVG(基础项.预算金额 BY 时间. 年份 )计算年内平均金额AVGDISTINCT此函数计算表达式中所有不同值的平均值。3. BOTTOMN按从 1 到 n 的顺序依次排列表达式参数中最小的 n 个值,1 对应于最小的数值。BOTTOMN 函数对结果集中返回的值执行运算。请求可以只包含一个BOTTOMN 表达式。语法BOTTOMN(Expr,integer)其中:Expr

3、求出数值的任意表达式。Integer任意正整数。表示结果集中显示的最低级别编号,1 是最低的级别。一般用于取得排名的数据,隐藏和排除字段都是不会影响结果的,跟表提示一起使用时,会先 BottomN 然后再提示4. COUNT此函数计算表达式中包含非空值的行数。该表达式通常为列名,此种情况下,将返回该列中包含非空值的行数。语法:COUNT(exprBY expr1)其中:expr 为任意表达式。expr1 可以指定范围。如 COUNT(基础项.预算金额 BY 时间.年份)COUNTDISTINCT此函数对 COUNT 函数进行相异处理。5. Max&Min计算满足数值表达式参数的行的最大值(最大

4、数值) 。语法Max(numExpr)其中:numExpr求出数值的任意表达式。可以使用 Max(numExpr by Dim) 设置 Max 的范围如 MAX(事实-销售订单头. 订单金额 BY 时间维.年)VS MAX(事实- 销售订单头. 订单金额)6. MEDIAN此函数计算符合数值表达式参数要求的行的中间值。如果有偶数个行,则中间值为两个中间行的平均值。此函数始终返回双精度值。语法MEDIAN(numExprBY expr1)其中:numExpr 是求值结果为数值的任何表达式。expr1 可以指定范围7. NTILE此函数根据用户指定的范围确定值的排名。它返回整数,表示任意排名范围。

5、换句话说,生成的排序数据集分为多个维片,每个维片中值的数目大致相当。numTiles = 100 的 NTile 返回的结果一般称为“百分比段”(数值从 1 到 100,100 表示最高排名 )。该值不同于 Oracle BI PERCENTILE 函数的结果,该函数在 SQL 92 中符合所谓的“百分比排名” ,并返回从 0 到 1 的值。语法NTILE(numExpr, numTiles)其中:numExpr 是求值结果为数值的任何表达式。numTiles 是非空值正整数,表示维片数量。如果 numExpr 参数不为空值,则该函数返回介于请求的范围中的表示排名的整数。该函数可以用于求得比如

6、说,销售额排名前 25%的区域,就设置 numTiles为 4,然后筛选该参数值等于 4 的8. PERCENTILE此函数计算符合数值表达式参数要求的每个值的百分比排名。百分比段排名范围介于 0 (第 1 个百分比段 ) 和 1 (第 100 个百分比段 ) 之间,包含两端的值。根据结果集内的值计算百分比段。语法PERCENTILE(numExpr)其中:numExpr 是求值结果为数值的任何表达式。PERCENTILE(基础项.预算金额) * 1009. RANK计算满足数值表达式参数的每个值的级别。级别 1 分配给最大数值,下一个连续的整数(2,3,4,.) 依次分配给每个后继的级别。如

7、果某些值相等,则分配相同的级别,同时,下一级别数字为前面出现的个数(例如,1,1,1,4,5,5,7.) 。根据结果集中的值计算级别。语法RANK (Expr1, Expr2 by Exp1,Exp2)其中:Expr求出数值的任意表达式。by 是定下 RANK 的范围如设置 RANK( 事实-销售订单行 .销量 by 时间维. 年)最后能够达到类似于 TopN 的效果,而且,对于表提示器也是生效的,当然得建立过滤器同时,这样会有一个局限在于,Rank 的序列生成方式是(1,1,1,4,5,5,7.)这样的,所以设置过滤小于 10,可能返回的值不止 9 个,就像上面左图一样10.STDDEV此函

8、数返回一组值的样本标准差。返回类型始终为双精度值。STDEV_SAMP 是 STDDEV 的同义词。语法STDDEV(ALL | DISTINCT numExpr BY expr)其中:numExpr 是求值结果为数值的任何表达式。如果指定 ALL,则会为数据集内的所有数据计算标准差。如果指定 DISTINCT,则会在计算中忽略所有重复项。如果未指定任何内容 (默认值) ,则会考虑所有数据。expr 可以设置范围如 STDDEV(基础项.预算金额 BY 时间.年份)11.STDDEV_POP此函数使用总体方差和标准差的计算公式返回一组值的标准差。语法STDDEV_POP(ALL | DISTI

9、NCT numExpr BY expr)其中:numExpr 是求值结果为数值的任何表达式。如果指定 ALL,则会为数据集内的所有数据计算标准差。如果指定 DISTINCT,则会在计算中忽略所有重复项。如果未指定任何内容 (默认值) ,则会考虑所有数据。expr 可以设置范围如 STDDEV_POP(基础项.预算金额 BY 时间.年份)12.SUM此函数计算通过累加符合数值表达式参数要求的所有值得出的总和。语法SUM(numExpr BY expr)其中:numExpr 是求值结果为数值的任何表达式。expr 可以设置范围SUMDISTINCT此函数计算通过累加符合数值表达式参数要求的所有不同

10、值得出的总和。13.TOPN按从 1 到 n 的顺序依次排列表达式参数中最大的 n 个值,1 对应于最大的数值。TOPN 函数对结果集中返回的值执行运算。请求可以只包含一个 TOPN表达式。语法TopN(Expr,integer)其中:Expr求出数值的任意表达式。Integer任意正整数。表示结果集中显示的最低级别编号,1 是最高的级别。一般,我们是新建一个 TOPN 的指标,然后将这个指标排除或者隐藏起来TOPN 对表提示器无效,因为是先 TOPN 再进行提示的2. 运行聚合函数运行聚合函数与函数聚合相似,它们都采用一组记录作为输入,但运行聚合函数不会为整组记录输出一个聚合,而会根据迄今为

11、止出现的记录输出聚合。14.MAVG此函数计算结果集内最后 n 行数据 (包括当前行) 的移动平均值。第一行的平均值等于第一行的数值表达式。第二行的平均值通过计算前两行数据的平均值得出。第三行的平均值通过计算前三行数据的平均值得出,依此类推,直到您到达第 n 行为止,第 n 行的平均值根据最后 n 行数据计算得出。语法MAVG(numExpr, integer)其中:numExpr 是求值结果为数值的任何表达式。integer 是任意正整数。它表示最后 n 行数据的平均值。比如,这里是 3,那么就是求上两行数据的平均值,第一行为第一行数据的平均值,第二行是前两行的平均值,第三行是前三行的平均值

12、,后面每一行都是左边前三行的平均值15.MSUM此函数计算最后 n 行数据 (包括当前行) 的移动总和。第一行的总和等于第一行的数值表达式。第二行的总和通过计算前两行数据的总和得出。第三行的总和通过计算前三行数据的总和得出,依此类推。在您到达第 n 行以后,根据最后 n 行数据计算总和。语法MSUM(numExpr, integer)其中:numExpr 是求值结果为数值的任何表达式。integer 是任意正整数。它表示最后 n 行数据的平均值。16.RSUM此函数根据迄今为止出现的记录来计算运行总和。第一行的总和等于第一行的数值表达式。第二行的总和通过计算前两行数据的总和得出。第三行的总和通

13、过计算前三行数据的总和得出,依此类推。语法RSUM(numExpr)其中:numExpr 是求值结果为数值的任何表达式。在 Answers 中,您还可以使用以下替代语法:RSUM(expression1 BY expression2, expression3, .)其中:expression1, expression2, expression3 . 可以是任何列引用或列引用中的算术表达式。BY 子句导致 RSUM 计算从任何 BY 列值不同于上一行的行重新开始。17.RCOUNT此函数采用一组记录作为输入,并计算迄今为止出现的记录数量。语法RCOUNT(expr)其中:expr 是任何数据类型

14、的表达式。在 Answers 中,您还可以使用以下替代语法:RCOUNT(expression1 BY expression2, expression3, .)其中:expression1, expression2, expression3 . 可以是任何列引用或列引用中的算术表达式。BY 子句导致 RCOUNT 计算从任何 BY 列值不同于上一行的行重新开始。18.RMAX&RMIN此函数采用一组记录作为输入,并根据迄今为止出现的记录显示最大值。指定数据类型必须是可排序的数据类型。语法RMAX(expr)其中:expr 是任何数据类型的表达式。该数据类型必须是具有关联的排序顺序的数据类型。在

15、 Answers 中,您还可以使用以下替代语法:RMAX(expression1 BY expression2, expression3, .)其中:expression1, expression2, expression3 . 可以是任何列引用或列引用中的算术表达式。BY 子句导致 RMAX 计算从任何 BY 列值不同于上一行的行重新开始。3. 字符串函数19.ASCII1. ConcatCONCAT(strExpr1, strExpr2 | strExpr3)其中:strExprs 是求值结果为逗号分隔字符串和字符串连接运算符 | (双竖线) 的表达式。CONCAT 函数首先将 strEx

16、pr2 与 strExpr3 连接在一起以生成中间字符串,然后将 strExpr1 和中间字符串连接在一起以生成最终字符串。示例此示例请求返回显示的结果。SELECT DISTINCT CONCAT(abc,def | ghi) FROM employee结果:abcdefghi2. Left从字符串左方返回指定字符数。语法Left(strExpr,integer)其中:strExpr求出字符串的任意表达式。Integer任意正整数,表示要从字符串左方返回的字符数。3. Lower将字符串转换成小写字母。语法Lower(strExpr)其中:strExpr求出字符串的任意表达式。4. Replace使用一个或多个其

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 实验/测试

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号