Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime
A kifejezés olyan képlet, amely függvények vagy operátorok használatával konstansok vagy oszlopokra, mezőkre vagy változókra mutató hivatkozások alapján számítja ki az eredményt.
Szintaxis
{ literal |
named_parameter_marker |
unnamed_parameter_marker |
column_reference |
field_reference |
parameter_reference |
CAST expression |
CASE expression |
COLLATE expression |
expr operator expr |
operator expr |
expr [ expr ] |
function_invocation |
( expr ) |
( expr, expr [, ... ] ) |
scalar_subquery }
scalar_subquery
( query )
A zárójelek expr [ expr ] tényleges zárójelek, és nem jelölnek választható szintaxist.
Megjegyzés:
A következőre vonatkozik:
a Databricks Runtime 18.0-s vagy újabb verzióira
A kifejezésen kívüli paraméterjelölőket akkor használhatja, ha a paraméterjelölő típusának literálja érvényes.
Paraméterek
literális
-
Az SQL-utasítást beküldő API által biztosított érték nevesített és beírt helyőrzője.
-
Az SQL-utasítást beküldő API által megadott érték névtelen és beírt helyőrzője.
oszlop_hivatkozás
Hivatkozás egy táblában lévő oszlopra vagy egy oszlop aliasára.
field_reference
Hivatkozás egy adott típusú mezőre
STRUCT.-
Egy SQL-felhasználó által definiált függvény paraméterére mutató hivatkozás a függvény törzséből. A hivatkozás használhatja a paraméter nem minősített nevét, vagy minősítheti a nevet a függvény nevével. Az azonosítók feloldásakor a paraméterek alkotják a legkülső hatókört.
-
Egy kifejezés, amely az argumentumot egy másik típusra alakítja.
-
Feltételes kiértékelést lehetővé tevő kifejezés.
-
Kifejezés, amely explicit rendezést társít egy karakterlánc kifejezéshez.
expr
Kifejezés, amely
operator-el van kombinálva, vagy amely egy függvény argumentuma.-
Egy unáris vagy bináris operátor.
-
Egy tömbelem vagy térképkulcs hivatkozása.
-
Beépített vagy felhasználó által definiált függvény meghívása.
Részletekért tekintse meg a function_invocation részt.
( expr )
Kényszerített elsőbbség, amely felülírja az operátorok elsőbbségét.
( expr, expr [, ... ] )
structKét vagy több mezőből álló mezőt hoz létre. Ez a jelölés a szerkezetfüggvény szinonimája.-
( lekérdezés )
Egy lekérdezésen alapuló kifejezés, amely egyetlen oszlopot és legfeljebb egy sort ad vissza.
Az egyes függvények és operátorok lapjai ismertetik a paraméterek által várt adattípusokat. Az Azure Databricks implicit öntést végez a várt típusokra SQL-adattípus-szabályok használatával. Ha egy operátor vagy függvény érvénytelen a megadott argumentumhoz, az Azure Databricks hibát jelez.
A névfeloldásról további információkat az Oszlop, mező, paraméter és változófeloldás résznél talál.
Állandó kifejezés
Olyan kifejezés, amely csak konstansokra vagy determinisztikus függvényekre épül argumentumok nélkül. Az Azure Databricks végrehajthatja a kifejezést, és használhatja az eredményül kapott állandót, ahol általában konstansokra van szükség.
feltételes kifejezés
Olyan kifejezés, amelynek eredménytípusa a következő BOOLEAN: . A logikai kifejezéseket feltételnek vagy predikátumnak is nevezik.
Skaláris alkérdés
Egy ( query ) formájú kifejezés. A lekérdezésnek egy olyan táblát kell visszaadnia, amely egy oszlopból és legfeljebb egy sorból áll.
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, az Azure Databricks 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 query, például egy skaláris allekérdezést vagy egy EXISTS predikátumot.
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
> SELECT (c1, (c2, c3)) FROM VALUES(1, 2, 3) AS T(c1, c2, c3);
{"c1":1,"col2":{"c2":2,"c3":3}}