gpt4 book ai didi

hadoop - 插入 Hive 表 - 非分区表到分区表 - 无法插入目标表,因为列号/类型

转载 作者:可可西里 更新时间:2023-11-01 14:45:25 25 4
gpt4 key购买 nike

当我尝试插入分区表时出现以下错误SemanticException [错误 10044]:第 1:23 行无法插入目标表,因为列号/类型不同“US”:表 inclause-0 有 2 列,但查询有 3 列。

我的输入数据

1,aaa,US
2,bbb,US
3,ccc,IN
4,ddd,US
5,eee,IN
6,fff,IN
7,ggg,US

已创建 hive 表 tx

create table tx (no int,name string,country string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

已创建分区表 t1 按国家/地区分区

create table t1 (no int,name string) PARTITIONED BY (country string)  ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

我尝试了以下两个插入,但都失败了

    INSERT OVERWRITE TABLE t1 PARTITION (country='US') 
SELECT * from tx where country = 'US';

INSERT OVERWRITE TABLE t1 PARTITION (country='US')
SELECT no,name,country from tx where country = 'US';

错误 :SemanticException [错误 10044]:第 1:23 行无法插入目标表,因为列号/类型不同“US”:表 insclause-0 有 2 列,但查询有 3 列。

最佳答案

非常感谢 Samson Scharfrichter

    INSERT OVERWRITE TABLE t1 PARTITION (country='US') 
SELECT no,name from tx where country = 'US';
INSERT INTO TABLE t1 PARTITION (country='IN')
SELECT no,name from tx where country = 'IN';

我检查了分区

hive>  SHOW PARTITIONS t1;
OK
country=IN
country=US
Time taken: 0.291 seconds, Fetched: 2 row(s)
hive>

关于hadoop - 插入 Hive 表 - 非分区表到分区表 - 无法插入目标表,因为列号/类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35812477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com