Partilhar via


INSERT OVERWRITE DIRECTORY com formato Hive

Aplica-se a: Marque Sim Databricks Runtime

Substitui os dados existentes no diretório com os novos valores usando o Hive SerDe. O suporte ao Hive deve estar habilitado para usar esse comando. Você especifica 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 arquivos 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 pode ser usada para especificar um costume SerDe para esta inserção. Como alternativa, DELIMITED a cláusula pode ser usada para especificar o nativo SerDe e declarar o delimitador, o caractere de escape, o caractere nulo e assim por diante.

  • file_format

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

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

    Os valores a serem inseridos. Um valor explicitamente especificado ou um NULL pode ser inserido. Uma vírgula deve ser usada para separar cada valor na cláusula. Mais de um conjunto de valores pode ser especificado para inserir várias linhas.

  • query

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

    • Uma SELECT declaração
    • Uma TABLE declaração
    • Uma FROM declaraçã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;