2014-09-24 63 views
1

您好删除分区所有的表是在第1列和第2列分配均为INT类型,我使用下面的命令删除该分区,column1为等于空或HIVE_DEFAULT_PARTITION在蜂房

ALTER TABLE Table_Name DROP IF EXISTS PARTITION(column1=__HIVE_DEFAULT_PARTITION__,column2=101); 

但我得到以下错误:缺少\“在”,”附近'

当我这样做:

show partitions Table_Name(这是多么牛逼他划分到被丢弃的表情)

输出:

column1=__HIVE_DEFAULT_PARTITION__/column2=101 

回答

1

谢谢您的回答家伙欣赏它..actually想通了这个问题

ALTER TABLE Table_Name DROP IF EXISTS PARTITION(column1<1,column2=101);

为COLUMN1有一个空值的条目,我想删除这是HIVE_DEFAULT_PARTITION或(空)所以使用条件< 1曾在我身边

0

您是否尝试过把HIVE_DEFAULT_PARTITION引号

ALTER TABLE Table_Name DROP IF EXISTS 
PARTITION(column1='__HIVE_DEFAULT_PARTITION__',column2=101); 
0

您可以直接删除分区上的列2。

ALTER TABLE Table_Name DROP IF EXISTS PARTITION(column2=101);