Databricks Runtime nazw

Identyfikuje różne rodzaje obiektów w Databricks Runtime.

Nazwa bazy danych

Identyfikuje bazę danych. Baza danych udostępnia grupę obiektów w wykazie.

Składnia

database_identifier

Parametry

Przykłady

> use default;

> create database my_db;

Nazwa schematu

Synonim nazwy bazy danych.

Nazwa tabeli

Identyfikuje obiekt tabeli. Tabelę można kwalifikować przy użyciu nazwy bazy danych lub niekwalifikować przy użyciu prostego identyfikatora.

Składnia

{ [ database_name . ] table_identifier |
  { file_format | `file_format` } . `path_to_table` }
  [temporal_specification]

temporal_specification
{
  @ timestamp_encoding |
  @V version |
  TIMESTAMP AS OF expr |
  VERSION AS OF version
}

Parametry

  • database_name:kwalifikowana lub niekwalifikowana nazwa bazy danych zawierająca tabelę.

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

  • file_format:jeden z , csv , , , , , , avroparquetorcbinaryFiletextdelta (bez uwzględniania liter).

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

  • temporal_specification:Gdy jest używana, odwołuje się do tabeli delty w określonym punkcie w czasie lub wersji.

    Specyfikacji czasowej można używać tylko w kontekście zapytania lub funkcji MERGE USING.

    • @ timestamp_encoding:dodatni literał BIGINT, który koduje znacznik czasu w formacie.
    • @V wersji:dodatni literał INT identyfikujący wersję tabeli delty.
  • wyrażenie:proste wyrażenie, które oblicza znacznik czasu. expr musi być wyrażeniem stałym, ale może zawierać current_date() wyrażenie lub current_timestamp() .

  • timestamp_expression może być dowolną z:

    • '2018-10-18T22:15:12.013Z', czyli ciąg, który można rzutować na znacznik czasu
    • cast('2018-10-18 13:36:32 CEST' as timestamp)
    • '2018-10-18', czyli ciąg daty
    • current_timestamp() - interval 12 hours
    • date_sub(current_date(), 1)
    • Dowolne inne wyrażenie, które jest lub można rzutować na znacznik czasu
  • version to wartość długa, która może zostać uzyskana z danych DESCRIBE HISTORY table_spec wyjściowych .

timestamp_expressionPodzapytania ani nie mogą być version podzapytaniami.

Jeśli nazwa jest niekwalifikowana i nie odwołuje się do znanego aliasutabeli, Databricks Runtime najpierw próbuje rozpoznać tabelę jako tabelę w bieżącej bazie danych.

Jeśli nazwa jest kwalifikowana za pomocą bazy danych, Databricks Runtime próbuje rozpoznać tabelę w bieżącym katalogu.

Databricks Runtime zgłasza błąd, jeśli używasz dla tabeli, która nie jest w temporal_specification formacie Delta Lake.

Przykłady

`Employees`

employees

hr.employees

`hr`.`employees`

delta.`somedir/delta_table`

`csv`.`spreadsheets/data.csv`

Nazwa widoku

Identyfikuje widok. Widok może być kwalifikowany przy użyciu nazwy bazy danych lub niekwalifikowany przy użyciu prostego identyfikatora.

Składnia

[ database_name . ] view_identifier

Parametry

  • database_name:kwalifikowana lub niekwalifikowana nazwa bazy danych, która zawiera 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. Kolumnę można kwalifikować za pomocą nazwy tabeli lub widoku albo niekwalifikować przy użyciu prostego identyfikatora.

Składnia

[ { table_name | view_name } . ] column_identifier

Parametry

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

Zidentyfikowana kolumna musi istnieć w tabeli lub widoku.

Przykłady

> SELECT c1 FROM VALUES(1) AS T(c1);
 c1
 1

Nazwa pola

Identyfikuje pole w obrębie struktury. Kolumnę można kwalifikować za pomocą nazwy tabeli lub widoku albo niekwalifikować przy użyciu prostego identyfikatora.

Składnia

expr { . field_identifier [. ...] }

Parametry

  • wyrażenie:wyrażenie typu STRUCT.
  • field_identifier:identyfikator określający nazwę pola.

Do głęboko zagnieżdżonych pól 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 za pomocą nazwy bazy danych lub niekwalifikowana przy użyciu prostego identyfikatora.

Składnia

[ database_name . ] function_identifier

Parametry

Przykłady

`math`.myplus

myplus

math.`myplus`

Alias tabeli

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

Składnia

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

Parametry

W przypadku podania identyfikatorów kolumn ich liczba musi odpowiadać liczbie kolumn w dopasowanej relacji.

Jeśli nie poniesiesz identyfikatorów kolumn, ich nazwy są dziedziczone z relacji z 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 SELECT do odwołania.

Jeśli wyrażenie jest funkcją generatora o wartościach tabeli,alias etykietuje listę kolumn, które zostały wykonane.

Składnia

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

Parametry

Aliasy kolumn nie muszą być unikatowe w obrębie listy wyboru, ale unikatowość jest wymaganiem, aby odwoływać 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