Informatica 常用组件Lookup之七 查找条件
PowerCenter 使用查找条件来测试收到的值。这与 SQL 查询中的 WHERE 子句相似。为转换配置查找条件时,将对转换输入值和查找源或高速缓存(用查找端口代表)中的值进行比较。当您运行工作流时,PowerCenter 将基于条件在查找源或高速缓存中查询所有收到的值。
必须在所有查找转换中输入查找条件。查找条件的某些准则适用于所有查找转换,而某些准则则视您如何配置转换而定。
为查找转换输入条件时,请遵循以下准则:
- 条件中的数据类型必须匹配。
- 为条件中用到的每个查找端口使用一个输入端口。您可以在转换的多个条件中使用相同的输入端口。
- 输入多个条件时,PowerCenter 将每个条件计算为 AND 而不是 OR。PowerCenter 仅返回与您指定的所有条件相匹配的行。
- PowerCenter 匹配空值。例如,如果输入查找条件列是 NULL,PowerCenter 将该 NULL 计算为与查找中的 NULL 相等。
- 为已排序输入配置了平面文件查找时,如果未对条件列分组,PowerCenter 将使会话失败。如果对列进行了分组,但尚未排序,PowerCenter 将按您没有配置排序输入的方式来处理查找。
查找条件准则和 PowerCenter 处理匹配的方法可能不同,具体取决于您将转换配置为动态高速缓存,不高速缓存还是静态高速缓存。
不高速缓存或静态高速缓存
将查找转换配置为无高速缓存或使用静态高速缓存时,请遵循以下准则:
- 创建查找条件时,您可以使用以下操作符:=, >, <, >=, <=, !=
提示:如果包括多于一个查找条件,请将带等号的条件放在前面,以提高查找性能。例如,创建以下查找条件:
ITEM_ID = IN_ITEM_ID PRICE <= IN_PRICE
- 输入值必须满足查找的所有条件才能返回值。
条件可以匹配相等值或提供一个阈值条件。例如,您需要查找不是生活在加利福尼亚州的客户,或薪酬高于 $30,000 的员工。取决于源和条件的种类,查找可能会返回多个值。
处理多个匹配项
查找操作根据您在查找转换中设置的条件查找值。如果查找条件不是基于唯一的键,或如果查找源非规范化,则 PowerCenter 可能在查找源或高速缓存中找到多个匹配项。
- 返回第一个匹配值,或返回最后一个匹配值。您可以将转换配置为返回第一个匹配的值,或返回最后一个匹配的值。第一个和最后一个值指在查找高速缓存中找到的、与查找条件相匹配的第一个和最后一个值。高速缓存查找源时,PowerCenter 通过为查找高速缓存中的每一列生成一个 ORDER BY 子句来确定哪一行是第一个哪一行是最后一个。PowerCenter Server 然后按照升序排列查找条件中的每一查找源列。
PowerCenter 按数字升序排列数值列(如 0 到 10),从一月到十二月并从每月第一天到每月最后一天排列日期/时间列,并根据会话配置的排序方式排列字符串列。
- 返回错误。PowerCenter 返回输出端口的默认值。
注: 当会话遇到配置为使用动态高速缓存的查找转换的多个键时,PowerCenter 将使该会话失败。
动态高速缓存
如果将查找转换配置为使用动态高速缓存,则在查找条件中您只能使用等号 (=) 操作符。
处理多个匹配项
不能在配置为使用动态高速缓存的转换中配置多匹配处理。当会话正在高速缓存查找表或在含有重复键的高速缓存中查找值时,如果遇到多匹配,PowerCenter 将使该会话失败。
Informatica 常用组件Lookup之七 查找条件的更多相关文章
- Informatica 常用组件Lookup之四 查找组件
在映射中配置查找转换时,请定义以下组件: 查找源 端口 属性 条件 元数据扩展 查找源 您可以使用平面文件或关系表作为查找源.创建查找转换时,您可以从以下位置导入查找源: 资料库中的任 ...
- Informatica 常用组件Lookup之八 查找高速缓存
可以配置查找转换以高速缓存查找文件或表.PowerCenter 将在处理高速缓存查找转换中的第一个数据行时在存储器中建立高速缓存.它将根据您在转换或会话特性中配置的数量来分配高速缓存区内存.Power ...
- Informatica 常用组件Lookup之九 配置未连接的查找转换
在映射中,未连接的查找转换与管道是分开的.您可以使用 :LKP 引用限定符编写表达式以调用其它转换中的查找.未连接查找的常用用法包括: 测试表达式中某个查找的结果 基于查找结果过滤行 基于查找的结果将 ...
- Informatica 常用组件Lookup缓存之五 使用动态查找高速缓存
对于关系查找,当目标表也是查找表时,可能要配置转换以使用动态高速缓存.PowerCenter 将在处理第一个查找请求时创建高速缓存.它将根据查找条件为传递给转换的每行查询高速缓存.当您使用动态高速缓存 ...
- Informatica 常用组件Lookup缓存之四 使用不高速缓存的查找或静态高速缓存
默认情况下,在为高速缓存配置查找转换时,PowerCenter 将创建静态查找高速缓存.PowerCenter 将在处理第一个查找请求时创建高速缓存.它将根据查找条件为传递给转换的每行查询高速缓存.P ...
- Informatica 常用组件Lookup之十 创建查找转换
在 Mapping Designer 中选择"转换-创建".选择查找转换.输入转换名称.查找转换的命名惯例是 LKP_TransformationName.单击"确定&q ...
- Informatica 常用组件Lookup之二 已连接和未连接的查找
可以配置一个已连接的查找转换,以从映射管道中直接接收输入:您也可以配置一个未连接的查找转换,以从其它转换的表达式结果中接收输入. 已连接的查找 未连接的查找 直接从管道接收输入值. 从其它转换的 :L ...
- Informatica 常用组件Lookup之五 转换属性
查找转换的属性标识数据库源.PowerCenter 如何处理转换,以及它如何处理高速缓存和多项匹配. 创建映射时,为每个查找转换指定属性.创建会话时,您可在会话属性中覆盖某些属性,如每个转换的索引和数 ...
- Informatica 常用组件Lookup之六 查询
PowerCenter 基于您在查找转换中配置的端口和属性来查询查找.当第一行输入到查找转换时,PowerCenter 运行一个默认的 SQL 语句.如果使用关系查找,您可以在"查找 SQL ...
随机推荐
- EcOS安装
从ubuntu 拷贝到 centos cd /media ls cd ./sf_EcOS 这个目录就是共享目录,名字可能不一样 cp -r studio.zip /home/ 1. 查看版本 cent ...
- TestNG入门到...
目录 一.概述 二.@Test注解常用参数 三.测试中常用的断言(assert) 四.TestNG常用注解及使用 五.配置文件xml常用标签 六.参数传递 七.测试报告 一.概述 1.TestNG是一 ...
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)
服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + Nginx + MySQL + PHP +SVN),其中svn是用来代替ftp,方便开发中调试同步代码 相关目录:所有软件 ...
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...
- [leetcode trie]212. Word Search II
Given a 2D board and a list of words from the dictionary, find all words in the board. Each word mus ...
- Iphone6手机不同浏览器页面尺寸设计
做移动端html5页面适配,通常要考虑很多种情况. 对于同一部手机,通常要考虑如下3点: 1. 在手机普通浏览器中打开,比如Safari浏览器,UC浏览器,QQ浏览器,360浏览器,谷歌浏览器. 2. ...
- 提高django model效率的几个小方法
django的model效率不是很高,特别是在做大量的数据库操作的时候,如果你只用django来开企业站或者外包项目的话,那可以小跳过下,而你恰巧是效率狂或者说是对程序的效率要求比较高的话,那就要注意 ...
- python2.7 关于打印中文的各种方法
目录 str类型的中文 第一种姿势:逐个打印 第二种姿势: json dumps 第三种姿势: repr string_escape 第四种姿势:PEP3140 unicode类型的中文 当str与u ...
- 使用ViewPager实现android软件使用向导的功能
现在的大部分android软件,都是使用说明,就是第一次使用该软件时,会出现向导,可以左右滑动,然后就进入应用的主界面了. 先看下效果图: 首先需要一个布局文件,是FlameLayout组成的,里面包 ...
- angularJS简介及其特点—— 五大特性,加快 Web 应用开发
AngularJS 是谷歌的一个 JavaScript 框架,旨在简化前端应用程序的开发. 一. 关于和jquery的比较 首先angular是一个mvc框架,它与jquery不同之处在于,前者致力于 ...