在teradata iam中导入.txt文件时,获取的时间戳无效。实际上,该文件包含时间戳数据,如20180607123456000

在teradata iam中导入.txt文件时,获取的时间戳无效。实际上,该文件包含时间戳数据,如20180607123456000,teradata,teradata-sql-assistant,Teradata,Teradata Sql Assistant,我有一个.txt文件包含时间戳列(如20180607093059000)和一些其他列,但在导入teradata SQL assistant时出现无效时间戳错误。请帮我带路 由于我需要将文件数据导入volatile,并且必须在这些文件表和实际表之间执行减号操作。时间戳的默认格式是'YYYY-MM-DD HH:MI:SS',您可以将应用于时间戳 To_Timestamp(ts, 'yyyymmddhhmissff3') 这将导致时间戳(6) 要获取时间戳(3),需要在添加小数点后使用格式强制转换:

我有一个
.txt
文件包含时间戳列(如20180607093059000)和一些其他列,但在导入teradata SQL assistant时出现无效时间戳错误。请帮我带路
由于我需要将文件数据导入volatile,并且必须在这些文件表和实际表之间执行减号操作。

时间戳的默认格式是
'YYYY-MM-DD HH:MI:SS'
,您可以将
应用于时间戳

To_Timestamp(ts, 'yyyymmddhhmissff3')
这将导致时间戳(6)

要获取时间戳(3),需要在添加小数点后使用格式强制转换:

Cast(Substring(ts From 1 FOR 14) || '.' || Substring(ts From 15) AS TIMESTAMP(3) FORMAT 'yyyymmddhhmiss.s(3)')

时间戳的默认格式为
'YYYY-MM-DD HH:MI:SS'
,您可以将
应用于时间戳

To_Timestamp(ts, 'yyyymmddhhmissff3')
这将导致时间戳(6)

要获取时间戳(3),需要在添加小数点后使用格式强制转换:

Cast(Substring(ts From 1 FOR 14) || '.' || Substring(ts From 15) AS TIMESTAMP(3) FORMAT 'yyyymmddhhmiss.s(3)')

感谢回复dnoeth。但这里的问题是,在导入时,我们在teradata中使用选项import,如下面的insert to table values(?,,,,,,,,,,,,?)。我们如何应用cast来实现这一点case@sra1:我认为您在导入期间无法执行此操作,仅在您选择后。我选择导入选项-->选择上面的书面查询-->打开文件-->我选择了我的文件-->然后它将错误显示为“无效时间戳”@sra1:您需要将其导入Varchar列,然后在选择期间应用强制转换感谢回复dnoeth。但这里的问题是在导入时我们正在使用teradata中的选项import(如下所示)插入表值(?,,,,,,,,,,?,,,?),我们如何应用castcase@sra1:我认为您在导入期间无法执行此操作,只有在选择.I选择导入选项-->选择上面的书面查询-->打开文件-->我选择了我的文件-->之后,它才会将错误显示为“无效时间戳”@sra1:您需要将其导入Varchar列,然后在选择期间应用强制转换