Перезапись раздела таблицы Teradata из выбранных - PullRequest
2 голосов
/ 18 февраля 2020

У меня есть таблица с разделенными NUPI.

CREATE MULTISET TABLE mydb.orders_fact

(
order_date                    DATE FORMAT 'yyyy-mm-dd' NOT NULL, 
order_id                      INTEGER NOT NULL,
...
)
PRIMARY INDEX NUPI_orders_fact ( order_id, ... )

PARTITION BY 
(
RANGE_N
   (
   order_date BETWEEN DATE '2016-01-01' AND DATE '2019-12-31' EACH INTERVAL '1' MONTH ,
   DATE '2020-01-01' AND '2025-12-31' EACH INTERVAL '1' DAY ,
   NO RANGE
   ) 
);

И я хочу реализовать ту же функциональность, что и в Apache Hive (INSERT OVERWRITE TABLE PARTITION). Можно ли сделать то же самое в Teradata?

INSERT OVERWRITE TABLE mydb.orders_fact partition (order_date)
SELECT order_id, ...
       order_date
  FROM some_other_table;

Если то же самое невозможно, пожалуйста, предложите, каков общий сценарий перезагрузки разделов в Teradata?

Я хочу запустить ежедневное задание, которое перезагрузит два последних ежедневных раздела с fre sh data (сегодня и в предыдущий день), поэтому один раздел всегда полностью перезаписывается, а другой новый. Также я хотел бы иметь возможность делать пересчеты - выгрузка предыдущих дат. Я не хочу объединять данные в раздел. Только перезаписать весь раздел (ы)

Это DROP / DELETE + INSERT, который я должен выполнить, чтобы сделать то же самое или что? Пожалуйста, предложите решение.

...