Dela via


INSERT OVERWRITE DIRECTORY med Hive-format

Gäller för:markerad ja Databricks Runtime

Skriver över befintliga data i katalogen med den nya values genom att använda Hive SerDe. Hive-stöd måste vara aktiverat för att kunna använda det här kommandot. Du anger infogade rader efter värdeuttryck eller resultatet av en fråga.

Syntax

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

Parameters

  • directory_path

    Målkatalogen. Nyckelordet LOCAL anger att katalogen finns i det lokala filsystemet.

  • row_format

    Radformatet för den här insert. Giltiga alternativ är sats SERDE och DELIMITED sats. SERDE-satsen kan användas för att specificera en anpassad SerDe för detta insert. Du kan också DELIMITED använda satsen för att ange den inbyggda SerDe och ange avgränsare, escape-tecken, null-tecken och så vidare.

  • file_format

    Filformatet för den här insert. Giltiga alternativ är TEXTFILE, SEQUENCEFILE, RCFILE, ORC, PARQUEToch AVRO. Du kan också ange ditt eget indata- och utdataformat med hjälp av INPUTFORMAT och OUTPUTFORMAT. ROW FORMAT SERDEkan endast användas med TEXTFILE, , eller SEQUENCEFILE, medan RCFILE endast kan användas med ROW FORMAT DELIMITEDTEXTFILE.

  • VALUES ( { värde | NULL } [ , ... ] ) [ , ( … ) ]

    Det values som ska infogas. Antingen kan ett uttryckligt angivet värde eller en NULL infogas. Ett kommatecken måste användas för att avgränsa varje värde i -satsen. Mer än en set av values kan anges för att insert flera rader.

  • fråga

    En fråga som skapar de rader som ska infogas. Något av följande format:

    • En SELECT instruktion
    • En TABLE instruktion
    • En FROM instruktion

Exempel

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;