INSERT OVERWRITE DIRECTORY with Hive format (INSERIR DIRETÓRIO DE SUBSTITUIÇÃO COM o formato hive)

Aplica-se a:check marked yes Databricks Runtime

Substitui os dados existentes no diretório pelos novos valores com o Hive SerDe. O suporte do Hive tem de estar ativado para utilizar este comando. Especifique as linhas inseridas por expressões de valor ou o resultado de uma consulta.

Sintaxe

INSERT OVERWRITE [ LOCAL ] DIRECTORY directory_path
    [ ROW FORMAT row_format ] [ STORED AS file_format ]
    { VALUES ( { value | NULL } [ , ... ] ) [ , ( ... ) ] | query }

Parâmetros

  • directory_path

    O diretório de destino. A LOCAL palavra-chave especifica que o diretório está no sistema de ficheiros local.

  • row_format

    O formato de linha para esta inserção. As opções válidas são SERDE cláusula e DELIMITED cláusula. SERDE a cláusula pode ser utilizada para especificar um personalizado SerDe para esta inserção. Em alternativa, DELIMITED a cláusula pode ser utilizada para especificar o nativo SerDe e indicar o delimitador, o caráter de escape, o caráter nulo, etc.

  • file_format

    O formato de ficheiro para esta inserção. As opções válidas são TEXTFILE, SEQUENCEFILE, RCFILE, ORC, PARQUETe AVRO. Também pode especificar o seu próprio formato de entrada e saída com INPUTFORMAT e OUTPUTFORMAT. ROW FORMAT SERDE só pode ser utilizado com TEXTFILE, SEQUENCEFILEou RCFILE, enquanto ROW FORMAT DELIMITED só pode ser utilizado com TEXTFILE.

  • VALORES ( { valor | NULL } [ , ... ] ) [ , ( ... ) ]

    Os valores a inserir. Pode inserir um valor explicitamente especificado ou um NULL. Tem de ser utilizada uma vírgula para separar cada valor na cláusula. Pode especificar mais do que um conjunto de valores para inserir várias linhas.

  • consulta

    Uma consulta que produz as linhas a inserir. Um dos seguintes formatos:

    • Uma SELECT instrução
    • Uma TABLE instrução
    • Uma FROM instrução

Exemplos

INSERT OVERWRITE LOCAL DIRECTORY '/tmp/destination'
    STORED AS orc
    SELECT * FROM test_table;

INSERT OVERWRITE LOCAL DIRECTORY '/tmp/destination'
    ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
    SELECT * FROM test_table;