假设我这样创建tbl1:
create table tbl1 (
col_a STRING,
col_b STRING,
col_c STRING )
partitioned by (col_d STRING);
有没有一种简写的方法来创建tbl2—一个列与tbl1相同的表,但不按任何内容进行分区(也不包括分区列)。tbl2手动ddl为:
create table tbl2 (
col_a STRING,
col_b STRING,
col_c STRING );
谢谢你的帮助!
2条答案
按热度按时间yrdbyhpb1#
您可以在hive中使用cta(createtable as select)。
这将不会在tbl2中创建任何分区,即使tbl1持有该分区。唯一的限制是如果没有out select,您将无法创建该结构。
jljoyd4f2#
分区列也是表中的一列。如果只需要3列(col\u a、col\u b、col\u c),则需要在avinash回答的查询中显式地提到它们。