Nazwy (Databricks SQL)

Identyfikuje różne rodzaje obiektów w usłudze Databricks SQL.

Nazwa wykazu

Identyfikuje wykaz. Wykaz udostępnia grupowanie obiektów, które można dalej podzielić na schematy.

Składnia

catalog_identifier

Parametry

Przykłady

> USE CATALOG hive_metastore;

> CREATE CATALOG mycatalog;

Nazwa schematu

Identyfikuje schemat. Schemat udostępnia grupowanie obiektów w wykazie.

Składnia

[ catalog_name . ] schema_identifier

Parametry

Przykłady

> USE SCHEMA default;

> CREATE SCHEMA my_sc;

Nazwa bazy danych

Synonim nazwy schematu.

Chociaż użycie elementu SCHEMAi DATABASE jest zamienne, SCHEMA jest preferowane.

Nazwa tabeli

Identyfikuje obiekt tabeli. Tabelę można zakwalifikować przy użyciu nazwy schematu lub niekwalifikowanej przy użyciu prostego identyfikatora.

Składnia

{ [ schema_name . ] table_identifier [ temporal_spec ] |
  { file_format | `file_format` } . `path_to_table` [ temporal_spec ] [ credential_spec ] }

temporal_spec
{
  @ timestamp_encoding |
  @V version |
  [ FOR ] { SYSTEM_TIMESTAMP | TIMESTAMP } AS OF timestamp_expression |
  [ FOR ] { SYSTEM_VERSION | VERSION } AS OF version
}

credential_spec
  WITH ( CREDENTIAL credential_name )

Parametry

  • schema_name: kwalifikowana lub niekwalifikowana nazwa schematu zawierająca tabelę.

  • table_identifier: identyfikator określający nazwę tabeli lub table_alias.

  • file_format: jeden z json, , binaryFileavrodeltacsvparquetorctext(bez uwzględniania wielkości liter).

  • path_to_table: lokalizacja tabeli w systemie plików. Musisz mieć ANY_FILE uprawnienia do korzystania z tej składni.

  • temporal_spec: w przypadku użycia odwołuje się do tabeli delty w określonym punkcie w czasie lub wersji.

    Specyfikację czasową można używać tylko w kontekście zapytania lub SCALANIE PRZY UŻYCIU.

    • @ timestamp_encoding: dodatni literał Bigint, który koduje znacznik czasu w yyyyMMddHHmmssSSS formacie.
    • @V wersja: dodatni literał liczby całkowitej identyfikujący wersję tabeli delta.
    • timestamp_expression: proste wyrażenie, które oblicza sygnaturę CZASową. timestamp_expressiom musi być wyrażeniem stałym, ale może zawierać current_date() lub current_timestamp().
    • version: Literał liczby całkowitej lub literał ciągu identyfikujący wersję tabeli delta.
  • credential_spec

    Możesz użyć odpowiedniego poświadczenia, aby uzyskać dostęp do path_to_table obiektu, który nie jest osadzony w lokalizacji zewnętrznej.

    • credential_name

      Nazwa poświadczenia używanego do uzyskiwania dostępu do lokalizacji magazynu.

Jeśli nazwa jest niekwalifikowana i nie odwołuje się do znanego aliasu tabeli, usługa Databricks SQL najpierw próbuje rozpoznać tabelę w bieżącym schemacie.

Jeśli nazwa jest kwalifikowana przy użyciu schematu, usługa SQL usługi Databricks próbuje rozpoznać tabelę w bieżącym wykazie.

Usługa SQL usługi Databricks zgłasza błąd, jeśli używasz temporal_spec tabeli, która nie jest w formacie usługi Delta Lake.

Przykłady

`Employees`

employees

hr.employees

`hr`.`employees`

hive_metastore.default.tab

system.information_schema.columns

delta.`somedir/delta_table`

`csv`.`spreadsheets/data.csv`

`csv`.`spreadsheets/data.csv` WITH (CREDENTIAL some_credential)

Nazwa widoku

Identyfikuje widok. Widok można zakwalifikować przy użyciu nazwy schematu lub niekwalifikowanego przy użyciu prostego identyfikatora.

Składnia

[ schema_name . ] view_identifier

Parametry

  • schema_name: kwalifikowana lub niekwalifikowana nazwa schematu zawierającego widok.
  • view_identifier: identyfikator określający nazwę widoku lub identyfikator widoku CTE.

Przykłady

`items`

items

hr.items

`hr`.`items`

Nazwa kolumny

Identyfikuje kolumnę w tabeli lub widoku. Kolumna może być kwalifikowana przy użyciu nazwy tabeli lub widoku albo niekwalifikowana przy użyciu prostego identyfikatora.

Składnia

[ { table_name | view_name } . ] column_identifier

Parametry

  • table_name: kwalifikowana lub niekwalifikowana nazwa tabeli tabeli zawierającej kolumnę.
  • view_name: kwalifikowana lub niekwalifikowana nazwa widoku widoku zawierającego kolumnę.
  • column_identifier: identyfikator określający nazwę kolumny.

Zidentyfikowana kolumna musi istnieć w tabeli lub widoku.

Usługa Databricks SQL obsługuje specjalną kolumnę _metadata. Ta pseudokolumna struktury typu jest częścią każdej tabeli i może służyć do pobierania informacji o metadanych dotyczących wierszy w tabeli.

Przykłady

-- An unqualified column name
> SELECT c1 FROM VALUES(1) AS T(c1);
 c1
 1

-- A qualified column name
> SELECT T.c1 FROM VALUES(1) AS T(c1);
 c1
 1

-- Using _matadata to retrieve infromation about rows retrieved from T.
> CREATE TABLE T(c1 INT);
> INSERT INTO T VALUES(1);
> SELECT T._metadata.file_size;
  574

Nazwa pola

Identyfikuje pole w obrębie struktury. Pole musi być kwalifikowane ze ścieżką do struktury zawierającej pole.

Składnia

expr { . field_identifier [. ...] }

Parametry

Do głęboko zagnieżdżonego pola można odwoływać się, określając identyfikator pola wzdłuż ścieżki do struktury głównej.

Przykłady

> SELECT addr.address.name
    FROM VALUES (named_struct('address', named_struct('number', 5, 'name', 'Main St'),
                              'city', 'Springfield')) as t(addr);
  Main St

Nazwa funkcji

Identyfikuje funkcję. Funkcja może być kwalifikowana przy użyciu nazwy schematu lub niekwalifikowana przy użyciu prostego identyfikatora.

Składnia

[ schema_name . ] function_identifier

Parametry

  • schema_name: kwalifikowana lub niekwalifikowana nazwa schematu zawierająca funkcję.
  • function_identifier: identyfikator określający nazwę funkcji.

Przykłady

`math`.myplus

myplus

math.`myplus`

Nazwa parametru

Identyfikuje parametr w treści funkcji zdefiniowanej przez użytkownika SQL (SQL UDF). Funkcja może być kwalifikowana przy użyciu identyfikatora funkcji lub niekwalifikowana przy użyciu prostego identyfikatora.

Składnia

[ function_identifier . ] parameter_identifier

Parametry

Przykłady

CREATE FUNCTION area(x INT, y INT) RETURNS INT
RETURN area.x + y;

Alias tabeli

Etykietuje odwołanie do tabeli, zapytanie, funkcję tabeli lub inną formę relacji.

Składnia

[ AS ] table_identifier [ ( column_identifier1 [, ...] ) ]

Parametry

Jeśli podasz identyfikatory kolumn, ich liczba musi być zgodna z liczbą kolumn w dopasowanej relacji.

Jeśli nie podasz identyfikatorów kolumn, ich nazwy są dziedziczone z relacji oznaczonej etykietą.

Przykłady

> SELECT a, b FROM VALUES (1, 2) AS t(a, b);
 a  b
 1  2

> DELETE FROM emp AS e WHERE e.c1 = 5;

Alias kolumny

Etykietuje wynik wyrażenia na liście do celów referencyjnych SELECT .

Jeśli wyrażenie jest funkcją generatora wartości tabeli, alias etykietuje listę utworzonych kolumn.

Składnia

[AS] column_identifier
[AS] ( column_identifier [, ...] )

Parametry

Chociaż aliasy kolumn nie muszą być unikatowe na liście wyboru, unikatowość jest wymagana do odwoływanie się do aliasu według nazwy.

Przykłady

> SELECT 1 AS a;
 a
 1

> SELECT 1 a, 2 b;
 a b
 1 2

> SELECT 1 AS `a`;
 a
 1

> SELECT posexplode(array(2)) AS (i, a);
 i  a
 0  2

> SELECT a + a FROM (SELECT 1 AS a);
 a
 2

Nazwa poświadczenia

Identyfikuje poświadczenia dostępu do magazynu w lokalizacji zewnętrznej.

Składnia

credential_identifier

Parametry

  • credential_identifier: niekwalifikowany identyfikator, który jednoznacznie identyfikuje poświadczenia.

Przykłady

Nazwa lokalizacji

Identyfikuje zewnętrzną lokalizację magazynu.

Składnia

location_identifier

Parametry

  • location_identifier: niekwalifikowany identyfikator, który jednoznacznie identyfikuje lokalizację.

Przykłady

`s3-json-data`

s3_json_data

Nazwa udziału

Identyfikuje udział w celu uzyskania dostępu do danych udostępnionych przez dostawcę.

Składnia

share_identifier

Parametry

  • share_identifier: niekwalifikowany identyfikator, który jednoznacznie identyfikuje udział.

Przykłady

`public info`

`public-info`

public_info

Nazwa dostawcy

Identyfikuje dostawcę udostępniania różnicowego.

Składnia

provider_identifier

Parametry

  • provider_identifier

    Niekwalifikowany identyfikator, który jednoznacznie identyfikuje dostawcę.

Przykłady

`Good Corp`

`Good-corp`

Good_Corp

Nazwa adresata

Identyfikuje adresata udziału.

Składnia

recipient_identifier

Parametry

Przykłady

`Good Corp`

`Good-corp`

Good_Corp