如何删除配置单元默认分区值__Hive_default_partition__



我正在为单元使用Glue metestore,我有AWS EMR集群来查询和修改单元表。

我的数据位于S3 中

我有3个分区列:

yr_no: int, month_no: int, uniq_id: int

但是,我有一些文件的值为NULL,Hive将yr_no和month_no的分区值设置为Hive_DEFAULT_partition

但是由于yr_no和month_no都是int,所以我不能轻易地删除这些分区。

我尝试了以下格式:

ALTER TABLE table DROP PARTITION(yr_no=__HIVE_DEFAULT_PARTITION__);
ALTER TABLE table DROP PARTITION(yr_no<1);

第一个命令抱怨因为列是int,第二个抱怨语法<

有没有一种简单的方法可以将其放在yr_no=HIVE_DEFAULT_PARTITION或month_no=HIVE_DEFAULT-PARTITION

也许您可以先使用show partitons。然后,使用desc formatted partition(yr_no=xxx,month_no=xxxx)查看详细信息。

您可以执行以下操作,它就会起作用。

ALTER TABLE table DROP PARTITION(yr_no='__HIVE_DEFAULT_PARTITION__');

最新更新