大家好,请帮我在 Informatica 中将 Timestamp(6) 转换为 Timestamp(0)。
我的输入如下所示,它可以是以下任何格式,并且是字符串格式,这应该转换为时间戳(0)。
'2015-07-12 14:03:10'
'2015-07-11 12:12:14.730000'
'2015-07-10'
输出应如下所示,应类似于 yyyy-mm-dd hh:mm:ss
'2015-07-12 14:03:10'
'2015-07-12 12:12:14'
'2015-07-10 00:00:00'
最佳答案
您需要检查每个场景并将其转换为找到匹配项时的日期:
IIF(IS_DATE(inp_DATE,'YYYY-MM-DD HH24:MI:SS'),TO_DATE(inp_DATE,'YYYY-MM-DD HH24:MI:SS'),
IIF(IS_DATE(inp_DATE,'YYYY-MM-DD HH24:MI:SS.US'),TO_DATE(inp_DATE,'YYYY-MM-DD HH24:MI:SS.US'),
IIF(IS_DATE(inp_DATE,'YYYY-MM-DD'),TO_DATE(inp_DATE,'YYYY-MM-DD'),NULL)))
如果您需要目标中的日期为字符串格式,可以使用TO_CHAR(new_DATE,'YYYY-MM-DD HI24:MI:SS')
关于Informatica 表达式时间戳 (6) 到时间戳 (0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31375274/