没有分区的 Hive 复制架构或删除分区



我正在尝试创建一个表并复制另一个表的模式,如下所示:

CREATE TABLE IF NOT EXISTS new_table LIKE old_table;

当我这样做时,因为old_table是一个分区的外部表,所以它也对new_table进行分区。我不需要也不希望对new_table进行分区,我基本上只想要列定义。它们有很多,而且我在我的管道中经常做这种事情,所以我本质上是懒惰的,因为我不希望在我的脚本中散布大量混乱的列定义。

我可以复制表架构并忽略分区,还是至少可以在创建分区后删除分区new_table?我已经设法找到了一种方法来删除分区,但不能完全删除分区。

您可以使用此查询创建没有分区的new_table

CREATE TABLE IF NOT EXISTS new_table AS SELECT * FROM old_table LIMIT 1;

最新更新