我和Talend做了一个ETL。为了提供时间维度,我必须连接两个表。一个表中的日期格式为DDMMYY,另一个表中的年、月和日有单独的字段。如何将第二个表的3个字段组合为第一个格式?我应该使用什么函数?
发布于 2017-08-20 01:44:20
使用TalendDate.parseDate("yy",yearColumn)
对于month (TalendDate.parseDate("MM",ymonthColumn))和TalendDate.parseDate("dd",dayColumn)也是如此,然后将所有三个变量连接在一个变量中,作为您所需的格式。
希望这能帮到你。
发布于 2017-08-21 16:35:08
首先,这取决于年、月、日的字段类型。它是一个字符串吗?它是一个数值吗?
如果这些字段是字符串类型,那么将它们放在一起的最简单方法是简单的连接。例如,在tMap中添加一个新字段,并根据您的工作执行以下操作(仅当值始终为2位数时有效):
row1.year + row1.month + row1.day那你就完了。如果这些值是数值,您应该首先将它们转换为字符串。
或者,I always recommend to convert date values in the actual Date format。我博客中的帖子还解释了日期字段本身和日期格式之间的区别,日期格式可以设置为DDMMYY,同时仍然具有有效的日期值。
https://stackoverflow.com/questions/45770809
复制相似问题