Hive 配置单元:在子查询中添加分区列数据

Hive 配置单元:在子查询中添加分区列数据,hive,hiveql,Hive,Hiveql,我有两个配置单元表,它们的架构完全相同,只是有一个日期列。其中一个有date列,这是它的分区依据,而另一个没有date列,也没有任何分区依据 这两个表是: staging (no date column and not partitioned) main (date column present and is partitioned by date) 我想将数据从暂存复制到主。我正在尝试这个问题 INSERT OVERWRITE TABLE main PARTITION (

我有两个配置单元表,它们的架构完全相同,只是有一个日期列。其中一个有date列,这是它的分区依据,而另一个没有date列,也没有任何分区依据

这两个表是:

staging (no date column and not partitioned)  
main (date column present and is partitioned by date)
我想将数据从暂存复制到主。我正在尝试这个问题

INSERT OVERWRITE TABLE main
        PARTITION (dt='2019-04-30')
                SELECT col_a,
                col_b,
                col_c,
                col_d,
                col_e,
                '2019-04-30' FROM staging
暂存台和主台都有a列、b列、c列、d列和e列。dt是只有主表具有的字段。但这就产生了一个错误:

main要求要插入的数据具有与目标表相同的列数:目标表有6列,但插入的数据有7列,包括1个具有常量值的分区列;'


你知道我该怎么解决这个问题吗?

嗯,原来我所要做的就是-

INSERT OVERWRITE TABLE main
        PARTITION (dt='2019-04-30')

                SELECT * FROM staging