使用LookUp 函数的好处

使用LookUp 函数的好处

转自:http://informatica.iblog.com/post/3070/31803 

Lookup是Powercenter里用的较多的一个模块,其实如果没什么性能特别要求,Lookup函数相对Lookup模块是一个很灵活的选择,它具有灵活的的使用方式,就像一个sql的子查询,可以在表达式里需要查找的地方灵活的调用。

当使用了Lookup函数时,建立session时需要指定$Source与$Target,该函数不能在mapplet中使用。

语法:
LOOKUP( result, search1, value1 [, search2, value2]... )

result及search为查找表的两个字段,在函数中需要使用:TD.为前缀。

例:
LOOKUP( :TD.SALES.ITEM_NAME, :TD.SALES.ITEM_ID, 10, :TD.SALES.PRICE, 15.99 )

以上的例子,即表示在SALES表中进行查找ITEM_ID=10 and PRICE=15.99 的记录,返回其ITEM_NAME值

在Mapping中使用该函数时,最重要的一点是查找表SALES是如何设置,因为帮助中没有指出,所以这一点大家应记住,查找表是以目标表的方式存在于Mapping中的,也就是说,当使用Lookup函数时,需要从Targets中把查找表拖入Mapping中。那么在Mapping中使用Lookup函数时,其查找表即是刚才拖入的目标表定义。该目标表定义不需要做任何设置,只需要放在Mapping中即可。

Lookup函数是一个很灵活的函数,使用好了可以很好的降低Mapping的复杂度,以及提高Mapping的可读性。

Informatica中要实现Lookup有三种方式:用Lookup模块,可以有连接方式与非连接方式两种,Lookup函数方式。
用Lookup模块,连接方式也就是我们最常见的方式。
非连接方式也就是在Mapping放一个Lookup模块,但不与任何模块有线条连着。在其他模块中用类似
:LKP.LKPTRANS_XXX(...)方式调用。
Lookup函数是Informatica提供又一种灵活的查找方式。可以不基于Lookup模块使用。即直接对着表进行查找。只要把需要查找的表从目标表里找出,放到Mapping里即可。而调用方式是
LOOKUP( :TD.SALES.ITEM_NAME, :TD.SALES.ITEM_ID, 10)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值