Talend正则表达式用于比较两个表

时间:2016-07-12 22:11:57

标签: sql regex join talend greenplum

我对Talend有点新,并且正在寻找一种使用talend进行gpdb连接的方法。有没有办法在talend作业中使用正则表达式,通过比较两个字符串来连接2个表?

select col1 from tableA
join on
col2 from tableB
on 
string_match(tableA.col1, '.*', 1) = string_match(tableB.colB, '^([^.]+){1}', 1)
WHERE 
<some conditions>;

我尝试过使用tExtractRegex,但需要一些帮助才能让联接进行字符串匹配。任何人都可以帮助我吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用Talend做什么:

1- Tmap中的连接表达式框中的任何java表达式,不幸的Pattern java类都不能在一条指令中使用,但可能有另一种方式。

2-使用tJavaRowtJavaFlex生成新的filds并执行任何可以提取PatternMatcher等正则表达式匹配的java代码,然后使用新生成的字段。