Delen via


Gereserveerde woorden en schema's

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Gereserveerde woorden zijn letterlijke woorden die worden gebruikt als trefwoorden door de SQL-taal die niet als id's moeten worden gebruikt om onverwacht gedrag te voorkomen.

Gereserveerde schema namen hebben een speciale betekenis voor Azure Databricks.

Gereserveerde woorden

Azure Databricks staat formeel niet toe dat specifieke letterlijke gegevens worden gebruikt als id's.

Als u echter een van de volgende list van id's wilt gebruiken als een table alias, moet u de naam omringen met back-ticks (').

  • ANTI
  • KRUIS
  • BEHALVE
  • VOL
  • BINNENSTE
  • INTERSECT
  • JOIN
  • LATERAAL
  • LEFT
  • MINUS
  • NATUURLIJK
  • AAN
  • RIGHT
  • SEMI
  • UNION
  • GEBRUIK

Speciale woorden in expressies

De volgende list van identificaties kunnen overal worden gebruikt, maar Azure Databricks behandelt deze bij voorkeur als trefwoorden binnen -expressies in bepaalde contexten.

  • NULL

    De SQL-waarde NULL .

  • DEFAULT

    Geeft een column standaardinstelling aan.

  • TRUE

    De booleaanse true SQL-waarde.

  • FALSE

    De booleaanse false SQL-waarde.

  • LATERAL

    Wordt gebruikt als een column kwalificatie om expliciete laterale correlatie aan te geven.

Gebruik back-ticks (NULL en DEFAULT) of qualify de column-namen met een table-naam of alias.

Azure Databricks gebruikt het CURRENT_ voorvoegsel om te verwijzen naar enkele configuratie-instellingen of andere contextvariabelen. Het voorvoegsel (_) is bedoeld voor Azure Databricks pseudo-columns. In Databricks Runtime is een bestaande pseudo-column de _metadata column.

Id's met deze voorvoegsels worden niet bij voorkeur behandeld. Vermijd echter het gebruik van deze voorvoegsels voor columns of column aliassen om onverwacht gedrag te voorkomen.

Gereserveerde catalog namen

Azure Databricks reserveert de volgende list van catalog namen voor huidig of toekomstig gebruik:

  • Catalog namen die beginnen met SYS
  • Catalog namen die beginnen met DATABRICKS

Vermijd het gebruik van deze namen.

Gereserveerde schema namen

Azure Databricks reserveert de volgende list van schema namen voor huidig of toekomstig gebruik:

  • BUILTIN

    Toekomstig gebruik van qualify ingebouwde functies.

  • SESSION

    Toekomstig gebruik van qualify tijdelijke views en functies.

  • INFORMATION_SCHEMA

    Bevat de SQL Standard informatie schema.

  • Schema namen die beginnen met SYS of DATABRICKS

Vermijd het gebruik van deze namen.

Gereserveerde ANSI-woorden

Azure Databricks dwingt geen gereserveerde ANSI-woorden af. De volgende list van SQL2016 trefwoorden worden alleen ter informatie verstrekt.

  • 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, GROUP, GROUPING

  • H

    HAVING

  • I

    IN, INNER, INSERT, INTERSECT, INTERVAL, INTO, IS

  • J

    JOIN

  • L

    VOORLOOP, LINKS, ZOALS, LOKAAL

  • N

    NATUURLIJK, NEE, NIET, NULL

  • O

    OF, ALLEEN, OF, ORDER, OUT, OUTER, OVERLAPS

  • P

    PARTITION, POSITIE, PRIMAIR

  • R

    BEREIK, VERWIJZINGEN, REVOKE, RECHTS, TERUGDRAAIEN, SAMENVOUWEN, RIJ, RIJEN

  • S

    SELECT, SESSION_USER, SET, SOMMIGE, START

  • T

    TABLE, TABLESAMPLE, THEN, TIME, TO, TRAILING, TRUE, TRUNCATE

  • U

    UNION, UNIEK, ONBEKEND, UPDATE, GEBRUIKER, USING

  • V

    VALUES

  • W

    WANNEER, WHERE, WINDOW, MET

Voorbeelden

-- 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