我们正在使用配置单元1.1.0,需要为具有100列的巨大表之一重新排序列以便用户可读。但是当我们对表中的列重新排序时,它会失败并出现以下错误。
重新排序列的替代方法是在表上创建视图。
%matplotlib nbagg
答案 0 :(得分:0)
ALTER TABLE ... REPLACE COLUMNS
适用于元数据级别(Metastore)
新列顺序与实际数据不匹配
对于镶木地板,您会得到一个例外,对于textfile,您将获得NULL值
您应该使用您的替代解决方案 - 使用视图。
答案 1 :(得分:0)
这篇文章有点老了,但是,我认为如果有类似的问题,它将使其他人受益!
您可以尝试下面的更改列方法:
ALTER TABLE test_parquet CHANGE COLUMN age age int FIRST;
会将列移动到第一列,否则,如果要在特定列之后重新排序,则下面的方法会有所帮助:
ALTER TABLE test_parquet CHANGE COLUMN name name string AFTER age;