Vyhrazená slova a schémata
Platí pro: Databricks SQL Databricks Runtime
Vyhrazená slova jsou literály používané jako klíčová slova jazyka SQL, které by se neměly používat jako identifikátory, aby nedocházelo k neočekávanému chování.
Rezervované názvy schema mají pro Azure Databricks zvláštní význam.
Vyhrazená slova
Azure Databricks formálně neuděluje, aby se žádné konkrétní literály nepoužívaly jako identifikátory.
Pokud ale chcete použít některý z následujících identifikátorů
- ANTI
- KŘÍŽ
- EXCEPT
- PLNÝ
- VNITŘNÍ
- INTERSECT
- JOIN
- BOČNÍ
- LEFT
- MINUS
- PŘIROZENÝ
- ON
- RIGHT
- POLO
- UNION
- USING
Speciální slova ve výrazech
Následující identifikátory list z lze použít kdekoli, ale Azure Databricks je preferenčně považuje za klíčová slova ve výrazech v určitých kontextech:
NULL
Hodnota SQL
NULL
.DEFAULT
Označuje výchozí column.
TRUE
Logická
true
hodnota SQL.FALSE
Logická
false
hodnota SQL.LATERAL
Používá se jako column kvalifikátor k označení explicitní laterální korelace.
Použijte zpětné apostrofy (NULL
a DEFAULT
) nebo qualify k názvům column s názvem nebo aliasem table.
Azure Databricks používá předponu CURRENT_
k odkazování na některá nastavení konfigurace nebo jiné kontextové proměnné.
Předpona podbaru (_
) je určená pro Azure Databricks pseudo columns.
V Databricks Runtime je existující pseudo column_metadata column.
Identifikátory s těmito předponami se nezpracovávají přednostně. Vyhněte se ale aliasům columns nebo column použitím těchto předpon, abyste se vyhnuli neočekávanému chování.
Rezervované názvy catalog
Azure Databricks si vyhrazuje následující názvy listcatalog pro aktuální nebo budoucí použití:
-
Catalog názvy začínající s
SYS
-
Catalog názvy začínající na
DATABRICKS
Nepoužívejte tyto názvy.
Rezervované názvy schema
Azure Databricks si vyhrazuje následující názvy listschema pro aktuální nebo budoucí použití:
BUILTIN
Budoucí použití předdefinovaných funkcí qualify.
SESSION
Budoucí použití pro dočasné qualify a views funkce.
INFORMATION_SCHEMA
Má SQL standard informace schema.
Schema názvy začínající
SYS
neboDATABRICKS
Nepoužívejte tyto názvy.
Rezervovaná slova ANSI
Azure Databricks nevynucuje rezervovaná slova ANSI. Následující list klíčových slov SQL2016 jsou poskytována pouze pro informační účely.
A
ALL, ALTER, AND, ANY, ARRAY, AS, AT, AUTHORIZATION
B
BETWEEN, BOTH, BY
C
CASE, CAST, CHECK, COLLATE, COLUMN, COMMIT, CONSTRAINT, CREATE, CROSS, CUBE, CURRENT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER
D
DELETE, DESCRIBE, DISTINCT, DROP
E
ELSE, END, ESCAPE, EXCEPT, EXISTS, EXTERNAL, EXTRACT
F
FALSE, FETCH, FILTER, FOR, FOREIGN, FROM, FULL, FUNCTION
G
GLOBAL, GRANT, SKUPINA, SKUPINOVÁNÍ
H
HAVING
I
IN, INNER, INSERT, PRŮSEČÍK, INTERVAL, DO, JE
J
JOIN
L
ÚVODNÍ, LEVÝ, LIKE, MÍSTNÍ
N
NATURAL, NO, NOT, NULL
O
OF, ON, ONLY, OR, ORDER, OUT, OUTER, OVERLAPS
P
PARTITION, POZICE, PRIMÁRNÍ
R
ROZSAH, ODKAZY, REVOKE, VPRAVO, VRÁCENÍ ZPĚT, SOUHRN, ŘÁDEK, ŘÁDKY
S
SELECT, SESSION_USER, SET, NĚKTERÉ, START
T
TABLE, TABLESAMPLE, PAK, ČAS, NA, NA KONCI, TRUE, TRUNCATE
U
Sjednocení, Jedinečný, Neznámý, UPDATE, Uživatel, Použití
V
VALUES
W
WHEN, WHERE, WINDOW, WITH
Příklady
-- Using SQL keywords
> CREATE TEMPORARY VIEW where(where) AS (VALUES (1));
> SELECT where from FROM where select;
1
-- Usage of NULL
> SELECT NULL, `null`, T.null FROM VALUES(1) AS T(null);
NULL 1 1
-- current_date is eclipsed by the column alias T.current_date
> SELECT (SELECT current_date), current_date, current_date()
FROM VALUES(1) AS T(current_date);
2021-10-23 1 2021-10-23
-- Reserved keyword ANTI cannot be used as table alias
> SELECT * FROM VALUES(1) AS ANTI;
Error in query: no viable alternative at input 'ANTI'
> SELECT * FROM VALUES(1) AS `ANTI`;
1