Hive分区表-尝试将数据从一个表加载到我的Hive中的分区表并获取[错误10044] *

所以我有一个包含20列的表,我创建了另一个分区表-使用2个分区值,现在当我尝试将具有20列的表中的数据加载到其他分区表中时,出现错误,我说我的分区表还有更多比我要从中插入数据的表要多的列

我的创建表语句:

  create table flight_data_parquet(
  YEAR INT,FL_DATE STRING,UNIQUE_CARRIER STRING,AIRLINE_ID INT,CARRIER STRING,TAIL_NUM STRING,FL_NUM INT,ORIGIN_AIRPORT_ID INT,ORIGIN_AIRPORT_SEQ_ID INT,ORIGIN STRING,DEST_AIRPORT_ID INT,DEST_AIRPORT_SEQ_ID INT,DEST STRING,DEP_DELAY FLOAT,ARR_DELAY FLOAT,CANCELLED TINYINT,DIVERTED TINYINT,DISTANCE INT)
partitioned by (Month INT,DAY_OF_MONTH INT)stored AS ParqUET;

-插入语句

insert into table flight_data_parquet partition(month=1,day_of_month) 
select  YEAR,FL_DATE,UNIQUE_CARRIER,AIRLINE_ID,CARRIER,TAIL_NUM,FL_NUM,ORIGIN_AIRPORT_ID,ORIGIN_AIRPORT_SEQ_ID,ORIGIN,DEST_AIRPORT_ID,DEST_AIRPORT_SEQ_ID,DEST,DEP_DELAY,ARR_DELAY,CANCELLED,DIVERTED,DISTANCE,month,day_of_month
from flight_data_v2 where month=1;

我得到的错误是-

FAILED: SemanticException [Error 10044]: Line 1:18 Cannot insert into target table because column number/types are different 'day_of_month': Table insclause-0 has 19 columns,but query has 20 columns.
hive (flights)> 
iCMS 回答:Hive分区表-尝试将数据从一个表加载到我的Hive中的分区表并获取[错误10044] *

分区规范partition( month = 1 ,day_of_month)中的

month=1是一个静态分区,并且已经指定了值,请从选择查询中删除month。选择中只有day_of_month(动态分区):​​

insert into table flight_data_parquet partition(month=1,day_of_month)  -- Month=1 is a static partition 
select  YEAR,FL_DATE,UNIQUE_CARRIER,AIRLINE_ID,CARRIER,TAIL_NUM,FL_NUM,ORIGIN_AIRPORT_ID,ORIGIN_AIRPORT_SEQ_ID,ORIGIN,DEST_AIRPORT_ID,DEST_AIRPORT_SEQ_ID,DEST,DEP_DELAY,ARR_DELAY,CANCELLED,DIVERTED,DISTANCE,day_of_month
from flight_data_v2 where month=1;
本文链接:https://www.f2er.com/1964452.html

大家都在问