Hive从一个表向另一个表插入数据的注意事项

使用insert into table <table_name> select语句执行数据迁移时,必须保证前后两个表字段数量一致。

测试场景:

当前存在表wht_test1,表结构以及数据如下所示:

Hive从一个表向另一个表插入数据的注意事项

测试步骤

1.创建表wht_test2,并在末尾增加一个字段。


  1. create table if not exists wht_test2 like wht_test1;
  2. alter table wht_test2 add columns (newcolumn string);

2.将wht_test1中的数据迁移到wht_test2中:

Hive从一个表向另一个表插入数据的注意事项

可以看出是由于字段数不一致造成的。

3.修改语句后重新执行,如下所示:

Hive从一个表向另一个表插入数据的注意事项

4.查看数据文件:

Hive从一个表向另一个表插入数据的注意事项

可以看出,虽然最后增加的是空字符,但仍然有字段分隔符“,”。

Hive从一个表向另一个表插入数据的注意事项

相关推荐