Hive: добавить данные столбца раздела в подзапрос - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть две таблицы кустов, которые имеют точно такую ​​же схему, за исключением столбца даты.Один из них имеет столбец даты, по которому он разделен, а другой не имеет столбца даты и ничем не разделен.

2 таблицы:

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

В промежуточной и основной таблицах есть col_a, col_b, col_c, col_d и col_e.dt - это поле, которое есть только в основной таблице.Но это выдает эту ошибку:

main requires that the data to be inserted have the same number of columns as the target table: target table has 6 column(s) but the inserted data has 7 column(s), including 1 partition column(s) having constant value(s).;'

Есть идеи, как я могу это исправить?

1 Ответ

1 голос
/ 30 апреля 2019

Ну, оказывается, все, что мне нужно было сделать, это -

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

                SELECT * FROM staging
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...