转换类型:已连接、主动
        聚合转换允许您执行聚合计算,比如平均值和总和。聚合转换与表达式转换不同,您可以使用聚合转换对多组执行计算。而表达式转换只允许您逐行地执行计算。
        使用转换语言来创建聚合转换时,您可以使用条件子句过滤行,这比 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. git 设置bitbucket 邮箱、用户

    1. git config --global user.name "youname" 2 .git config --global user.email "youeami ...

  2. Ext.example.msg()应用

    ①需要在开发包中包含文件夹example/shared中的example.js和example.css两个文件即可. ②在html文件中引入: <script src="../extj ...

  3. CentOS下的日志切割

    在Linux下,日志会不停的增长,为了防止日志文件过大,导致我们无法在日志中快速找到想要的信息,我们会定时对日志文件进行切割.在这里我将使用logrotate切割日志. (1).logrotate的配 ...

  4. 深入理解mysql的自连接和join关联

    一.mysql自连接 mysql有时在信息查询时需要进行对自身连接(自连接),所以我们需要为表定义别名.我们举例说明,下面是商品采购表,我们需要找到采购价格比惠惠高的所有信息. 一般情况我们看到这张表 ...

  5. [ 原创 ] Java基础7--Java反射机制主要提供了以下哪些功能?

    AVA反射机制主要提供了以下哪些功能? 在运行时判断一个对象所属的类 在运行时构造一个类的对象 在运行时判断一个类所具有的成员变量和方法 在运行时调用一个对象的方法

  6. [ 原创 ] Java基础1--Java中super和this的用法和区别

    许多同学在学习Java时分不清楚this和super的用法和区别,今天偶然发现一片加精的博文,看完内容准备自己也写下来积累一下 1.如果想在子类的构造方法中调用父类的构造方法,必须在子类的构造方法中使 ...

  7. 富文本插件KindEditor

    具体用法查看官网http://kindeditor.net/doc.php {% load staticfiles %} <!DOCTYPE html> <html lang=&qu ...

  8. centos+uwsgi+nginx+python+django服务器安装配置

    1.ssh登录后使用fdisk –l查看需要格式化硬盘的名称: 2.运行fdisk /dev/vdb,对数据盘进行分区,按照提示,依次输入n,p,1,两次回车,wq,分区开始.(注意数据盘的名称,和阿 ...

  9. Spring的优点

    Spring的优点 1.低侵入式设计,代码污染极低: 2.独立于各种应用服务器,基于Spring框架的应用,可以真正实现Write Once,Run Anywhere的承诺: 3.Spring的DI机 ...

  10. BZOJ 4520 [Cqoi2016]K远点对(KD树)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4520 [题目大意] 求K远点对距离 [题解] 修改估价函数为欧式上界估价,对每个点进行 ...