INSERT OVERWRITE DIRECTORY s formátem Hive
Platí pro: Databricks Runtime
Přepíše existující data v adresáři novými hodnotami pomocí Hive SerDe
.
Aby bylo možné tento příkaz použít, musí být povolená podpora Hive. Vložené řádky zadáte podle výrazů hodnot nebo výsledku dotazu.
Syntaxe
INSERT OVERWRITE [ LOCAL ] DIRECTORY directory_path
[ ROW FORMAT row_format ] [ STORED AS file_format ]
{ VALUES ( { value | NULL } [ , ... ] ) [ , ( ... ) ] | query }
Parametry
directory_path
Cílový adresář. Klíčové
LOCAL
slovo určuje, že adresář je v místním systému souborů.row_format
Formát řádku pro toto vložení. Platné možnosti jsou
SERDE
klauzule aDELIMITED
klauzule.SERDE
klauzuli lze použít k zadání vlastníhoSerDe
pro toto vložení. AlternativněDELIMITED
lze klauzuli použít k určení nativníhoSerDe
a stav oddělovače, řídicího znaku, znaku null atd.file_format
Formát souboru pro toto vložení. Platné možnosti jsou
TEXTFILE
, ,SEQUENCEFILE
RCFILE
,ORC
,PARQUET
, aAVRO
. Můžete také zadat vlastní vstupní a výstupní formát pomocíINPUTFORMAT
aOUTPUTFORMAT
.ROW FORMAT SERDE
lze použít pouze s , nebo , zatímcoTEXTFILE
lze použít pouze sSEQUENCEFILE
.RCFILE
ROW FORMAT DELIMITED
TEXTFILE
VALUES ( { hodnota | NULL } [ , ... ] ) [ , ( … ) ]
Hodnoty, které se mají vložit. Můžete vložit explicitně zadanou hodnotu nebo hodnotu NULL. Čárka musí být použita k oddělení každé hodnoty v klauzuli. Pro vložení více řádků lze zadat více než jednu sadu hodnot.
query
Dotaz, který vytvoří řádky, které se mají vložit. Jeden z následujících formátů:
- Příkaz A
SELECT
- Příkaz A
TABLE
- Příkaz A
FROM
- Příkaz A
Příklady
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;