我正在使用“复制”命令使用内部舞台将数据从CSV文件加载到表中。
加载数据后,我使用下面的代码来获取加载失败的行数。
Select * from table(Result_Scan('Copy_Query_ID'))
我还使用以下查询获取实际的失败记录:
select * from table(validate("Table_Name",job_id=>'Copy_Query_ID'))
它工作了好几次。但是我今天注意到第一个查询显示如下:
Rows_Parsed Rows_Loaded Error_Seen
10000 9600 400
所以我期望第二个查询结果中有400行,但我看到10400条记录: 所有行一次,另外400条记录包含其他一些错误。如果所有行都是错误行,那么为什么要加载它们?我不能为此目的使用该查询吗?
注意-在我的文件中,我有6个字段,但是我在“复制”中仅使用了其中4个字段,而其余的两个字段我正在使用SYSdate()
,这可能是不匹配的原因吗?
Copy into table(col1,col2,col3,col4,col5,col6) from ( select $1,$2,$3,$4, sysdate(),'10/20/2020' from %@table)
所以我想验证不是在查看字段5,6的新值,而是从文件中获取这些值?