Szukaj…


Składnia

  • Standardowa składnia:

  • WSTAW OVERWRITE TABLE tablename1 [PARTITION (partcol1 = val1, partcol2 = val2 ...) [JEŚLI NIE ISTNIEJE]] select_statement1 FROM from_statement;

  • WSTAW DO TABELI tablename1 [PARTITION (partcol1 = val1, partcol2 = val2 ...)] select_statement1 FROM from_statement;

  • WSTAW DO TABELI tablename1 [PARTITION (partcol1 = val1, partcol2 = val2 ...)] (z, y) select_statement1 FROM from_statement;

  • Rozszerzenie ula (wiele wkładek):

  • FROM from_statement
    WSTAW OVERWRITE TABLE tablename1 [PARTITION (partcol1 = val1, partcol2 = val2 ...) [JEŚLI NIE ISTNIEJE]] select_statement1
    [INSERT OVERWRITE TABLE tablename2 [PARTITION ... [IF NOTISTISTS]] select_statement2]
    [INSERT INTO TABELA tablename2 [PARTITION ...] select_statement2] ...;

  • FROM from_statement
    WSTAW DO TABELI tablename1 [PARTITION (partcol1 = val1, partcol2 = val2 ...)] select_statement1
    [INSERT INTO TABELA tablename2 [PARTITION ...] select_statement2]
    [INSERT OVERWRITE TABLE tablename2 [PARTITION ... [IF NOTISTISTS]] select_statement2] ...;

  • Rozszerzenie gałęzi (dynamiczne wstawki partycji):

  • WSTAW OVERWRITE TABLE tablename PARTITION (partcol1 [= val1], partcol2 [= val2] ...) select_statement FROM from_statement;

  • WSTAW DO TABELI tablename PARTITION (partcol1 [= val1], partcol2 [= val2] ...) select_statement FROM from_statement;

Uwagi

wstaw zastąpić
Instrukcja insert overwrite usuwa wszystkie istniejące pliki w tabeli lub partycji docelowej przed dodaniem nowych plików na podstawie użytej instrukcji select. Zwróć uwagę, że w przypadku zmian w strukturze tabeli lub pliku DML używanego do ładowania tabeli czasami stare pliki nie są usuwane. Podczas ładowania do tabeli za pomocą partycjonowania dynamicznego tylko partycje zdefiniowane przez instrukcję select zostaną zastąpione. Wszelkie istniejące partycje w obiekcie docelowym pozostaną i nie zostaną usunięte.

włóż w
Instrukcja wstawiania dołącza nowe dane do tabeli docelowej na podstawie użytej instrukcji select.

wstaw zastąpić

insert overwrite table yourTargetTable select * from yourSourceTable;

Wstaw do tabeli

INSERT INTO dołącza się do tabeli lub partycji, utrzymując istniejące dane w nienaruszonym stanie.

    INSERT INTO table yourTargetTable SELECT * FROM yourSourceTable;

Jeśli tabela jest podzielona na partycje, możemy wstawić do tej konkretnej partycji w sposób statyczny, jak pokazano poniżej.

    INSERT INTO TABLE yourTargetTable PARTITION (state=CA, city=LIVERMORE) 
    select * FROM yourSourceTable;

Jeśli tabela jest podzielona na partycje, możemy dynamicznie wstawiać do tej konkretnej partycji, jak pokazano poniżej. Aby perfom dynamicznie wstawiał partycje, musimy ustawić poniższe właściwości poniżej.

    Dynamic Partition inserts are disabled by default. These are the relevant configuration properties for dynamic partition inserts:
    SET hive.exec.dynamic.partition=true;
    SET hive.exec.dynamic.partition.mode=non-strict

    INSERT INTO TABLE yourTargetTable PARTITION (state=CA, city=LIVERMORE) (date,time)
    select * FROM yourSourceTable;

Wiele wstawek ze stołu.

Rozszerzenie ula (wiele wkładek):

    FROM table_name

    INSERT OVERWRITE TABLE table_one SELECT table_name.column_one,table_name.column_two

    INSERT OVERWRITE TABLE table_two SELECT table_name.column_two WHERE table_name.column_one == 'something'


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow