【发布时间】:2018-01-03 13:35:41
【问题描述】:
首先我创建一个 hive 分区表:
hive> create table partition_table
> (sid int ,sname string ,age int)
> partitioned by (sex string)
> row format delimited fields terminated by',';
OK
Time taken: 1.232 seconds
表格描述如下:
hive> desc partition_table;
OK
sid int
sname string
age int
sex string
# Partition Information
# col_name data_type comment
sex string
Time taken: 0.34 seconds, Fetched: 9 row(s)
然后我在这个表中插入了一些数据,但它不起作用。
hive> insert into table partition_table partition(sex='M')select sno ,sname ,age from student1 where sex ='M';
FAILED: SemanticException [Error 10006]: Line 1:44 Partition not found ''M''
为了避免这种情况,我编写了以下命令,然后执行了我的插入命令,即使这样我还是反复收到同样的错误。
set exec.dynamic.partition=true;
set exec.dynamic.partition.mode=nonstrict;
【问题讨论】:
-
您能否将
select sno ,sname ,age from student1 where sex ='M'输出添加到问题中。查询没有问题。 -
当然..分区列一定要英文吗