Share via


INSERT OVERWRITE DIRECTORY met Hive-indeling

Van toepassing op:gemarkeerd als ja Databricks Runtime

Hiermee overschrijft u de bestaande gegevens in de map met de nieuwe waarden met behulp van Hive SerDe. Hive-ondersteuning moet zijn ingeschakeld om deze opdracht te kunnen gebruiken. U geeft de ingevoegde rijen op per waarde-expressie of het resultaat van een query.

Syntaxis

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

Parameters

  • directory_path

    De doelmap. Het LOCAL trefwoord geeft aan dat de map zich in het lokale bestandssysteem bevindt.

  • row_format

    De rijopmaak voor deze invoegpositie. Geldige opties zijn SERDE component en DELIMITED component. SERDE -component kan worden gebruikt om een aangepaste SerDe voor deze insert op te geven. DELIMITED U kunt de component ook gebruiken om het systeemeigen SerDe en de status van het scheidingsteken, escapeteken, null-teken, enzovoort op te geven.

  • file_format

    De bestandsindeling voor deze insert. Geldige opties zijn TEXTFILE, SEQUENCEFILE, RCFILE, ORC, PARQUETen AVRO. U kunt ook uw eigen invoer- en uitvoerindeling opgeven met behulp van INPUTFORMAT en OUTPUTFORMAT. ROW FORMAT SERDE kan alleen worden gebruikt met TEXTFILE, SEQUENCEFILEof RCFILE, en ROW FORMAT DELIMITED kan alleen worden gebruikt met TEXTFILE.

  • WAARDEN ( { waarde | NULL } [ , ... ] ) [ , ( ... ) ]

    De waarden die moeten worden ingevoegd. U kunt een expliciet opgegeven waarde of een NULL invoegen. Er moet een komma worden gebruikt om elke waarde in de component van elkaar te scheiden. Er kan meer dan één set waarden worden opgegeven om meerdere rijen in te voegen.

  • Query

    Een query die de rijen produceert die moeten worden ingevoegd. Een van de volgende indelingen:

    • Een SELECT instructie
    • Een TABLE instructie
    • Een FROM instructie

Voorbeelden

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;