Hive更改字段类型的正确姿势

1 使用alter table change column 命令直接修改

alter table mini_program_tmp_month_on_month change column month_on_month_reading month_on_month_reading

2 如果表中已经有数据的话,通过上面的语句进行修改后会导致数据无法展示

step1 更改表名

alter table mini_program_result rename to mini_program_resul_copy;

step2 创建一个和原来表结构相同的名字

create table mini_program_result (
user_id  string,
msisdn   string,
imsi     string)
partitioned by (city string,sdate string)
row format delimited fields terminated by ',';

step3 原来数据按分区动态插入

set hive.exec.dynamic.partition=true;  
set hive.exec.dynamic.partition.mode=nonstrick;
insert into table mini_program_result partition(city,sdate)   
select 
    t.user_id,
    t.msisdn,
    t.imsi,
    t.city,
    t.sdate
from mini_program_resul_copy t
  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页
评论

打赏作者

小何才露尖尖角

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值