转换类型:已连接、主动
        聚合转换允许您执行聚合计算,比如平均值和总和。聚合转换与表达式转换不同,您可以使用聚合转换对多组执行计算。而表达式转换只允许您逐行地执行计算。
        使用转换语言来创建聚合转换时,您可以使用条件子句过滤行,这比 SQL 语言更为灵活。
        PowerCenter 执行其读取的聚合计算并存储聚合高速缓存中必需的数据组和行数据。
        创建包含聚合转换的会话后,您可启用会话选项和增量聚合。当 PowerCenter Server 执行增量聚合时,它会通过映射传递新的源数据并使用历史高速缓存数据以增量执行新的计算。

  设计器只允许聚合表达式出现在聚合转换中。聚合表达式可以包括条件子句和非聚合函数。还可以包括一个嵌入另一聚合函数的聚合函数,例如:

MAX( COUNT( ITEM ))

聚合表达式的结果因转换中使用的分组依据端口而异。例如,当 PowerCenter 计算以下不带已定义分组依据端口的聚合表达式时,它将会查找已售出项目的总量:

SUM( QUANTITY )

但是,如果您使用同一表达式并按 ITEM 端口分组,PowerCenter 将按项目返回已售出项目的总量。

您可以在任意输出端口创建聚合表达式并使用转换中的多个聚合端口。

聚合函数

可以使用聚合转换中的以下聚合函数。也可以将一个聚合函数嵌入另一个聚合函数。

  • AVG
  • COUNT
  • FIRST
  • LAST
  • MAX
  • MEDIAN
  • MIN
  • PERCENTILE
  • STDDEV
  • SUM
  • VARIANCE

当您使用这些函数中的任意一个时,必须要在聚合转换的表达式中使用。

嵌套聚合函数

可以在聚合转换的不同输出端口中纳入多个单级别或多个嵌套函数。但是,您不能在聚合转换中同时纳入单级别和嵌套函数。因此,如果聚合转换在任意输出端口中包含单级别函数,您将无法在此转换的其它任意端口使用嵌套函数。当您在同一聚合转换中包含单级别和嵌套函数时,设计器将标记映射或映射组件为无效。如果您需要创建单级别函数和嵌套函数,请分别建立聚合转换。

条件子句

可以在聚合表达式中使用条件子句以减少在聚合中使用的行数。条件子句可以是任意求值为 TRUE 或 FALSE 的子句。

例如,可以使用以下表达式计算超过其季度限额的员工的总佣金:

    SUM( COMMISSION, COMMISSION > QUOTA )

非聚合函数

可以在聚合表达式中使用非聚合函数。

以下表达式返回每个项目的最高已售出项目数(按项目分组)。如果未售出项目,表达式返回 0。

   IIF( MAX( QUANTITY ) > 0, MAX( QUANTITY ), 0))

聚合函数中的空值

配置 PowerCenter 时,您可以选择希望 PowerCenter 处理聚合函数中空值的方式。您可以选择在聚合函数中将空值视为 NULL 或零。默认情况下,PowerCenter Server 在聚合函数中将空值视为 NULL

Informatica 常用组件Aggregator之一 聚合表达式的更多相关文章

  1. Informatica 常用组件Aggregator之四 创建聚合转换

    在 Mapping Designer 中选择"转换-创建".选择聚合转换. 为聚合输入一个名称,并单击"创建".然后单击"完成". Desi ...

  2. Informatica 常用组件Aggregator之三 使用排序输入

    可以使用排序输入选项改善聚合转换性能.使用排序输入时,PowerCenter 会假定所有数据已按组排序.PowerCenter 读取某组的行时,它将执行聚合计算.需要时,它会将组信息存储在存储器中.要 ...

  3. Informatica 常用组件Aggregator之二 分组依据端口

    聚合转换允许您为聚合定义组,而不是在所有的输入数据间执行聚合.例如,您可以查找按地区分组的总销量,而不是查找总的公司销量. 要为聚合表达式定义组,请选择聚合转换中的相应输入.输入/输出.输出和变量端口 ...

  4. Informatica 常用组件Lookup之九 配置未连接的查找转换

    在映射中,未连接的查找转换与管道是分开的.您可以使用 :LKP 引用限定符编写表达式以调用其它转换中的查找.未连接查找的常用用法包括: 测试表达式中某个查找的结果 基于查找结果过滤行 基于查找的结果将 ...

  5. Informatica 常用组件Expression之一 概述

            转换类型:被动.已连接 可以在写入目标前,使用表达式转换计算单行中的值.例如,您可能需要调整员工薪酬.连接姓名或将字符串转换为数字.您可以使用表达式转换执行任意非聚合计算.在将结果输出 ...

  6. Informatica 常用组件Source Qualifier之一 概述

     转换类型:主动.已连接 1 Source Qualifier 概述 当你添加关系表或平面文件源定义至映射时,需要将它连接至 Source Qualifier 组件.Source Qualifier ...

  7. Informatica 常用组件Lookup之十 创建查找转换

    在 Mapping Designer 中选择"转换-创建".选择查找转换.输入转换名称.查找转换的命名惯例是 LKP_TransformationName.单击"确定&q ...

  8. Informatica 常用组件Lookup之四 查找组件

    在映射中配置查找转换时,请定义以下组件: 查找源 端口 属性 条件 元数据扩展 查找源         您可以使用平面文件或关系表作为查找源.创建查找转换时,您可以从以下位置导入查找源: 资料库中的任 ...

  9. Informatica 常用组件Lookup之二 已连接和未连接的查找

    可以配置一个已连接的查找转换,以从映射管道中直接接收输入:您也可以配置一个未连接的查找转换,以从其它转换的表达式结果中接收输入. 已连接的查找 未连接的查找 直接从管道接收输入值. 从其它转换的 :L ...

随机推荐

  1. [leetcode sort]148. Sort List

    Sort a linked list in O(n log n) time using constant space complexity. 以时间复杂度O(n log n)排序一个链表. 归并排序, ...

  2. Django配置参数可选总结

    一.可选字段参数 null blank core db_index editable primary_key radio_admin unique True or False db_colum hel ...

  3. 01-学前入门VS各个组成部分

    1)快捷打开运行窗口(Windows+R) 里面输入devenv命令快捷打开VS 2)解决方案,项目及类之间的关系(解决方案包含项目-项目包含-类) 例如可以这样比喻: 解决方案:相当于公司 项目:相 ...

  4. [BZOJ3309]DZY Loves Math(莫比乌斯反演+线性筛)

    $\sum\limits_{T=1}^{n}\lfloor\frac{n}{T}\rfloor\lfloor\frac{m}{T}\rfloor\sum\limits_{d|T}f(d)\mu(\fr ...

  5. 洛谷.4525.[模板]自适应辛普森法1(Simpson积分)

    题目链接 Simpson积分公式:\[\int_a^bf(x)dx\approx\frac{b-a}{6}\left[f(a)+f(b)+4f(\frac{a+b}{2})\right]\] 推导过程 ...

  6. 【枚举】AtCoder Regular Contest 095 C - Symmetric Grid

    题意:给你一个H*W的字符矩阵,一次操作可以任意将两行或者两列交换.问你是否能通过任意多次操作,使得其变为对称矩阵.对称的含义是:对于任何格子A(i,j),其都等于A(H-i+1,W-j+1). 显然 ...

  7. java设计模式(六)策略模式

    适用于同一操作的不同行为,策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们可以相互替换,让算法独立于使用它的客户而独立变化,具体应用场景如第三方支付对接不同银行的算法. 要点:1)抽象策 ...

  8. 撩课-Java每天5道面试题第11天

    86.如何获得高效的数据库逻辑结构? 从关系数据库的表中 删除冗余信息的过程 称为数据规范化, 是得到高效的关系型数据库表的逻辑结构 最好和最容易的方法. 规范化数据时应执行以下操作: 1.将数据库的 ...

  9. 【10.5校内测试】【DP】【概率】

    转移都很明显的一道DP题.按照不优化的思路,定义状态$dp[i][j][0/1]$表示吃到第$i$天,当前胃容量为$j$,前一天吃(1)或不吃(0)时能够得到的最大价值. 因为有一个两天不吃可以复原容 ...

  10. Splay 模板

    Splay 模板 struct SplayTree{ const static int maxn = 1e5 + 15; int ch[maxn][2] , key[maxn] , s[maxn] , ...