Databricks SQL kifejezés

A kifejezés olyan képlet, amely konstansok, oszlop, mező vagy változóhivatkozások alapján számítja ki az eredményt függvények vagy operátorok használatával.

Syntax

{ literal |
  column_reference |
  field_reference |
  CAST expression |
  CASE expression |
  expr operator expr |
  operator expr |
  expr [ expr ] |
  function_invocation |
  ( expr ) |
  scalar_subquery }

scalar_subquery
  ( query )

A szögletes [ expr ] zárójelek valódi szögletes zárójelek, és nem választható szintaxist jeleznek.

Paraméterek

  • literál:A Databricksbenleírt típusú konstans SQL adattípusokat tartalmaz.
  • column_reference:Hivatkozás egy tábla vagy oszlop aliasának oszlopára.
  • field_reference:Hivatkozás egy STRUCT típusú mezőre (Databricks SQL).
  • CAST-kifejezés:Egy kifejezés, amely a argumentumot egy másik típusra adja át.
  • CASE kifejezés:Feltételes kiértékelést lehetővé tevő kifejezés.
  • expr:Maga a kifejezés, amelyet egy vagy egy függvény argumentumával kombinálnak.
  • operátor:Egy egyentűs vagy bináris operátor.
  • [ expr ]: Egy tömbelemre vagy egy térképkulcsra való hivatkozás.
  • function_invocation:Beépített vagy felhasználó által definiált függvényt megkivó kifejezés
  • ( expr ): Az operátorok precedenciát felülbíráló kényszerített precedencia.
  • scalar_subquery:
    • ( query ): Egy lekérdezésen alapuló kifejezés, amely egyetlen oszlopot és legalább egy sort ad vissza.

Jegyzetek

A függvények és az operátorok adott adattípusokat várnak el, amelyeken működnek, amelyeket a megfelelő függvénnyel vagy operátorral lehet leírni. A Databricks SQL implicit konverziót hajt végre a várt típusokra a Databricks és SQL sorrendje alapján. Ha egy operátor vagy függvény érvénytelen a megadott argumentumhoz, a Databricks SQL hibát jelez.

Konstans kifejezés

Olyan kifejezés, amely csak konstansok vagy determinisztikus függvények alapján, argumentumok nélkül. A Databricks SQL végrehajthatja a kifejezést, és olyan konstanst használhat, amelyben általában konstansok szükségesek.

Logikai kifejezés

Egy kifejezés BOOLEAN eredménytípussal. A logikai kifejezéseket más néven feltételnek vagy predikátumnakis nevezik.

Skaláris segédlekérdezés

Az űrlap ( query ) kifejezése. A lekérdezésnek olyan táblát kell visszaadni, amely egy oszlopot és legalább egy sort tartalmazza.

Ha a lekérdezés nem ad vissza sort, az eredmény NULL . Ha a lekérdezés egynél több sort ad vissza, a Databricks SQL hibát ad vissza. Ellenkező esetben az eredmény a lekérdezés által visszaadott érték.

Egyszerű kifejezés

Olyan kifejezés, amely nem tartalmaz , például skaláris segédlekérdezés query vagy EXISTS predikátum.

Példák

> SELECT 1;
  1

> SELECT (SELECT 1) + 1;
  2

> SELECT 1 + 1;
  2

> SELECT 2 * (1 + 2);
  6

> SELECT 2 * 1 + 2;
  4

> SELECT substr('Spark', 1, 2);
  Sp

> SELECT c1 + c2 FROM VALUES(1, 2) AS t(c1, c2);
  3

> SELECT a[1] FROM VALUES(array(10, 20)) AS T(a);
  20

> SELECT true;
  true