INSERT OVERWRITE DIRECTORY

Dotyczy:zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime

Zastępuje istniejące dane w katalogu nowymi wartościami przy użyciu określonego formatu pliku Spark. Należy określić wstawiony wiersz według wyrażeń wartości lub wyniku zapytania.

Składnia

INSERT OVERWRITE [ LOCAL ] DIRECTORY [ directory_path ]
    USING file_format [ OPTIONS ( { key [ = ] val } [ , ... ] ) ]
    { VALUES ( { value | NULL } [ , ... ] ) [ , ( ... ) ] | query }

Parametry

  • directory_path

    Katalog docelowy. Można go również określić przy OPTIONS użyciu polecenia path. Słowo LOCAL kluczowe określa, że katalog znajduje się w lokalnym systemie plików.

  • file_format

    Format pliku, który ma być używany do wstawiania. Prawidłowe opcje to TEXT, CSV, JSON, JDBC, PARQUET, ORC, HIVE, LIBSVM lub w pełni kwalifikowana nazwa klasy niestandardowej implementacji org.apache.spark.sql.execution.datasources.FileFormat.

  • OPTIONS ( { key [ = ] val } [ , ... ] )

    Określa co najmniej jedną opcję zapisu formatu pliku. Prawidłowe klucze i wartości zależą od wybranej file_format wartości. Aby uzyskać opcje obsługiwane przez każdy format, zobacz Opcje formatu danych. Możesz również ustawić klucz, path aby określić katalog docelowy.

  • VALUES ( { value | NULL } [ , ... ] ) [ , ( … ) ]

    Wartości do wstawienia. Można wstawić jawnie określoną wartość lub wartość NULL. Użyj przecinka, aby oddzielić każdą wartość w klauzuli . Aby wstawić wiele wierszy, określ więcej niż jeden zestaw wartości.

  • query

    Zapytanie, które tworzy wiersze do wstawienia. Użyj jednego z następujących formatów:

    • Instrukcja SELECT
    • Instrukcja TABLE
    • Instrukcja FROM

Przykłady

INSERT OVERWRITE DIRECTORY '/Volumes/my_catalog/my_schema/my_volume/'
    USING parquet
    OPTIONS (col1 1, col2 2, col3 'test')
    SELECT * FROM test_table;

INSERT OVERWRITE DIRECTORY
    USING parquet
    OPTIONS ('path' '/Volumes/my_catalog/my_schema/my_volume/', col1 1, col2 2, col3 'test')
    SELECT * FROM test_table;