阿里MaxCompute(原ODPS)如何修改列字段数据类型

  • 首先,odps目前不支持修改已有表的列字段数据类型

  • 其次,办法总是有的,以下就是我的方法

    1. 在ODPS上建立一个与原表一致的新表tb_tmp ,注意新表要用修改后的字段类型

pass

    2. 在ODPS上调用动态分区语句,将原分区表tb的值写入到新表tb_tmp

INSERT OVERWRITE TABLE tb_tmp PARTITION (partcol1 ...) 
select col1,col2,partcol1... FROM tb;

    3.检查下原表和新表数据量与分区是否一致

pass

    4.删除原表tb

1 DROP TABLE tb

    5.重命名新表tb_tmp为tb

1 ALTER TABLE tb_tmp RENAME TO tb

参考资料:https://help.aliyun.com/document_detail/73779.html?spm=a2c4g.11186623.6.690.645b65d5T9daDG

猜你喜欢

转载自www.cnblogs.com/wfwup/p/12721729.html