INSERT OVERWRITE DIRECTORY met Hive-indeling
Van toepassing op: 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 enDELIMITED
component.SERDE
-component kan worden gebruikt om een aangepasteSerDe
voor deze insert op te geven.DELIMITED
U kunt de component ook gebruiken om het systeemeigenSerDe
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
,PARQUET
enAVRO
. U kunt ook uw eigen invoer- en uitvoerindeling opgeven met behulp vanINPUTFORMAT
enOUTPUTFORMAT
.ROW FORMAT SERDE
kan alleen worden gebruikt metTEXTFILE
,SEQUENCEFILE
ofRCFILE
, enROW FORMAT DELIMITED
kan alleen worden gebruikt metTEXTFILE
.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
- Een
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;