Talend:匹配2个列并仅显示这些值匹配的行

Talend:匹配2个列并仅显示这些值匹配的行,talend,Talend,我是Talend的初学者,如果有人能帮助我,我将不胜感激 如何将邮政编码ex:69000的前两位数字与包含值69的另一列相匹配。然后仅显示这些值匹配的行。(附有完整数据的Excel文件) 以下数据示例: ID, CompanyName, CodePostal, City, DepartementNumber, Region 5 TELMAT INFORMATIQUE 69000 LYON 66 pyrenees-orientales 5 TELMAT INFORMATIQ

我是Talend的初学者,如果有人能帮助我,我将不胜感激

如何将邮政编码ex:69000的前两位数字与包含值69的另一列相匹配。然后仅显示这些值匹配的行。(附有完整数据的Excel文件)

以下数据示例:

ID, CompanyName, CodePostal, City, DepartementNumber, Region

5   TELMAT INFORMATIQUE 69000   LYON    66  pyrenees-orientales

5   TELMAT INFORMATIQUE 69000   LYON    67  bas-rhin

5   TELMAT INFORMATIQUE 69000   LYON    68  haut-rhin

**5 TELMAT INFORMATIQUE 69000   LYON    69  rhone**

5   TELMAT INFORMATIQUE 69000   LYON    70  haute-saone

5   TELMAT INFORMATIQUE 69000   LYON    71  saone-et-loire

5   TELMAT INFORMATIQUE 69000   LYON    72  sarthe

5   TELMAT INFORMATIQUE 69000   LYON    73  savoie
提前感谢

您可以使用正则表达式:

例如,在mysql中,我们有:

select * FROM companies WHERE CodePostal REGEXP '^(69)' 
->where('slug', 'regexp', "^(69)")
在拉雷维尔,我们有:

select * FROM companies WHERE CodePostal REGEXP '^(69)' 
->where('slug', 'regexp', "^(69)")

您可以在tMap的输出上使用一个简单的过滤器,只允许验证条件的记录:

StringHandling.LEFT(row.CodePostal, 2).equals(row.DepartementNumber)

您必须对字符串对象使用
equals
方法,使用==无效。

您自己尝试过什么?请注意,StackOverflow不是一个代码编写服务,而是一个帮助您编写代码的地方。请包括您自己的尝试,并指定不适用于这些尝试的内容。实际上没有要发布的代码,但是我的尝试是使用stringHandling LEFT函数在tMap组件中添加一个筛选器,以选择字符串的前2个值,然后使用==操作将其与第二列中的2个值进行比较。感谢您的提示“您必须在字符串对象上使用equals方法,使用==将不起作用。”当我使用此筛选表达式时,实际解决了此问题,但使用==从未起过作用。很好!如果解决了您的问题,您能接受答案吗?:)