informatica Sql 转换 踩坑

由于上游系统传递的城市名称不标准,导致无法和下游系统匹配。

例:上游传递的是 “红河”,下游系统数据库存的是“伊犁哈萨克自治州”

为了解决这个难题,自然就得用上Sql转换器,采用like的方式。

图标是这样的

然后配置查询参数,我才用的是静态链接,查询模式,并在SQL查询中,按下图配置好like语句。

注意SQL查询

SELECT CITY_ID FROM CSO_OWNER.M_CITY where city_name LIKE ‘%’||?city_name?||’%’ AND ROWNUM =1,

这里一定要按照 LIKE ‘%’||?city_name?||’%’ 来拼接, ?city_name? 为输入参数,

否则,查出来的数据就是空的,之前我是这样写的,查询不出来

错误写法:SELECT CITY_ID FROM CSO_OWNER.M_CITY where city_name LIKE ‘%?city_name?%’ AND ROWNUM =1

最后还需要再会话中,设置数据库的连接

记录下,今天又踩一坑。。。。。。。

You may also like...

发表回复