继续获取用于转换为日期的 informatica 函数错误无效字符串
Keep getting informatica function error invalid string for converting to Date
我正在尝试将 nvarchar 转换为日期,但我一直收到以下错误
TT_11132 转换 [Expression] 计算输出列 [Run_Date1] 时出错。错误消息是 [<> [TO_DATE]:转换为日期的字符串无效 ... t:TO_DATE(u:'20190304',u:'MM/DD/YYYY HH24:MI:SS')]。
但我的函数不包含 'MM/DD/YYYY HH24:MI:SS'。这是我的功能供参考。
TO_DATE(TO_CHAR(to_date(RUN_DATE),'mmddyyyy'),'mm/dd/yyyy')
请帮忙
谢谢
只用 TO_DATE(RUN_DATE, 'YYYYMMDD')
替换所有内容
Samik 是对的,就用 TO_DATE(RUN_DATE, 'YYYYMMDD')
我想补充的是解释一下为什么你的函数是错误的。所以从最里面剥离它:
to_date(RUN_DATE)
将 RUN_DATE 字符串转换为 DATE
尝试猜测格式,因为它尚未给出。让我们将其结果称为NewDate
并进一步分析:
TO_CHAR(NewDate,'mmddyyyy')
现在这会将 NewDate
转换为 mmddyyyy
格式的字符串。让我们将其命名为 NewString_MMDDYYYY
,看看它能把我们带到哪里。这使得最终函数为:
TO_DATE(NewString_MMDDYYYY,'mm/dd/yyyy')
看到错误了吗?您告诉 Informatica 将 NewString_MMDDYYYY
转换为日期。你告诉函数它是用 mm/dd/yyyy
格式写的——这显然没有被使用,因为 TO_CHAR 函数被告知将它存储在 mmddyyyy
.
因此,如果您的输入 RUN_DATE
是 YYYYMMDD
格式,那么您需要做的就是 TO_DATE(RUN_DATE, 'YYYYMMDD')
。如果 RUN_DATE
使用了其他格式,只需相应地替换第二个参数即可。
我正在尝试将 nvarchar 转换为日期,但我一直收到以下错误
TT_11132 转换 [Expression] 计算输出列 [Run_Date1] 时出错。错误消息是 [<> [TO_DATE]:转换为日期的字符串无效 ... t:TO_DATE(u:'20190304',u:'MM/DD/YYYY HH24:MI:SS')]。
但我的函数不包含 'MM/DD/YYYY HH24:MI:SS'。这是我的功能供参考。
TO_DATE(TO_CHAR(to_date(RUN_DATE),'mmddyyyy'),'mm/dd/yyyy')
请帮忙
谢谢
只用 TO_DATE(RUN_DATE, 'YYYYMMDD')
Samik 是对的,就用 TO_DATE(RUN_DATE, 'YYYYMMDD')
我想补充的是解释一下为什么你的函数是错误的。所以从最里面剥离它:
to_date(RUN_DATE)
将 RUN_DATE 字符串转换为 DATE
尝试猜测格式,因为它尚未给出。让我们将其结果称为NewDate
并进一步分析:
TO_CHAR(NewDate,'mmddyyyy')
现在这会将 NewDate
转换为 mmddyyyy
格式的字符串。让我们将其命名为 NewString_MMDDYYYY
,看看它能把我们带到哪里。这使得最终函数为:
TO_DATE(NewString_MMDDYYYY,'mm/dd/yyyy')
看到错误了吗?您告诉 Informatica 将 NewString_MMDDYYYY
转换为日期。你告诉函数它是用 mm/dd/yyyy
格式写的——这显然没有被使用,因为 TO_CHAR 函数被告知将它存储在 mmddyyyy
.
因此,如果您的输入 RUN_DATE
是 YYYYMMDD
格式,那么您需要做的就是 TO_DATE(RUN_DATE, 'YYYYMMDD')
。如果 RUN_DATE
使用了其他格式,只需相应地替换第二个参数即可。