在选择查询中排除分区

o2rvlv0m  于 2021-06-27  发布在  Hive
关注(0)|答案(1)|浏览(328)

我在 hive 里有一张table,是按国家划分的。我想排除索马里、伊拉克等3个特定的地区。我不想在where子句中让步(不在‘索马里’,‘伊拉克’)。我们是否有排除特定分区的选项,例如(我们有从select语句中排除列的选项)?。
请建议。

uoifb46i

uoifb46i1#

您可以删除不需要的分区,

hive> alter table <db_name>.<table_name> drop partition 
      (<partition_filed>="somalia"),(<partition_filed>="iraq");
``` `(or)` 通过排除不需要的分区,在表的顶部创建一个视图。

hive> create view <db_name>.<view_name> as select * from <db_name>.<table_name>
where <partition_filed> not in ("somalia","iraq");

hive> select * from <db_name>.<view_name>;

相关问题