Sql 蜂巢-我该怎么做;创建表格时选择..”;使用原始表中的分区?

Sql 蜂巢-我该怎么做;创建表格时选择..”;使用原始表中的分区?,sql,hadoop,hive,hiveql,create-table,Sql,Hadoop,Hive,Hiveql,Create Table,我需要从我们的蜂巢dlk创建一个“工作表”。虽然我可以使用: create table my_table as select * from dlk.big_table 很好,我在从原始的“big_table”继承分区(属性day、month和year)或从这些属性创建新分区时遇到了问题。 搜索web并没有真正帮助我回答这个问题-所有的“教程”或解决方案都涉及createasselect或创建分区,而不是两者都涉及。 这里有人可以帮忙吗?不支持按select创建分区表。您可以通过两个步骤完成此操

我需要从我们的蜂巢dlk创建一个“工作表”。虽然我可以使用:

create table my_table as
select *
from dlk.big_table
很好,我在从原始的“big_table”继承分区(属性
day
month
year
)或从这些属性创建新分区时遇到了问题。 搜索web并没有真正帮助我回答这个问题-所有的“教程”或解决方案都涉及
createasselect
或创建分区,而不是两者都涉及。
这里有人可以帮忙吗?

不支持按select创建分区表。您可以通过两个步骤完成此操作:

  • 像dlk.big\u table一样创建表my\u table
    这将创建具有相同架构的表

  • 加载数据

    设置hive.exec.dynamic.partition=true;
    设置hive.exec.dynamic.partition.mode=nonstrict

    插入覆盖表我的表分区(日、月、年)
    从dlk.big_表中选择*


  • 非常好用,谢谢。顺便说一句,如果我只想从“big_table”中选择一些列,并添加一些新的列作为正则表达式从中提取的列,我可以用一个命令来完成吗,或者仅仅用“alter add”、“insert overwrite”和“drop”命令来完成更实际吗?@mageintraning然后用必要的列创建表
    create table(column list)
    并使用“插入选择计算列”。也许我不完全明白你在问什么。最好把这当作一个问题来问,并提供详细的描述,其他人可能会帮上忙。我会先尝试修补一下。再次感谢你。