0
我试图完成对语句的插入,但不断收到“无效日期”错误。2665 - Teradata中的无效日期错误
我创建语句:
CREATE MULTISET TABLE Date_Table,
NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT,
DEFAULT MERGEBLOCKRATIO
(
customer_field,
date_field DATE FORMAT 'YYYY-MM-DD',
other_fields
)
PRIMARY INDEX (date_field);
我的插入语句:
INSERT INTO Date_Table
select
a.customer_field,
a.CAST (date_field AS DATE FORMAT 'yyyy-mm-dd'),
a.other_fields
from a
我试过到目前为止:
- 使得date_fiel通过
cast(null as date) as date_field
- 检查在
date_field
对sys_calendar.calendar
每个日期d空,以确保它们是有效的日期 - 由
SELECT TYPE (date_field) FROM date_table GROUP BY 1
检查类型,它们都变成是“日”型
任何想法?
左加入<表格一>到sys_calendar,使用 = CALENDAR_DATE其中。 为空。这会告诉你,如果你有一些不是有效日期的值。 –
Andrew
如果消除INSERT并简单地运行SELECT,会发生什么情况?源表中列的数据类型是什么? –
@Andrew,这就是我在第二个子弹中所尝试的。没有任何返回 –