Delen via


Gereserveerde woorden en schema's

Van toepassing op:aangekruist als ja Databricks SQL aangekruist als ja 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 schemanamen 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 item uit de volgende lijst van `` identifiers als een `` tabelaliaswilt gebruiken, moet u de naam omringen met back-ticks (`).

  • ANTI
  • KRUIS
  • UITGEZONDERD
  • VOL
  • BINNENSTE
  • INTERSECT
  • JOIN
  • LATERAAL
  • LEFT
  • MINUS
  • NATUURLIJK
  • AAN
  • RECHTS
  • SEMI
  • UNION
  • GEBRUIK

Speciale woorden in uitdrukkingen

De volgende lijst met identificaties kan overal worden gebruikt, maar Azure Databricks behandelt ze bij voorkeur als trefwoorden binnen uitdrukkingen in bepaalde contexten.

  • NULL

    De NULL-waarde van SQL.

  • DEFAULT

    Hiermee wordt een standaardkolom aangegeven.

  • TRUE

    De booleaanse true SQL-waarde.

  • FALSE

    De booleaanse false SQL-waarde.

  • LATERAL

    Wordt gebruikt als kolomscheidingsteken om expliciete laterale correlatie aan te geven.

Gebruik back-ticks (NULL en DEFAULT) of kwalificeer de kolomnamen met een tabelnaam of alias.

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

Id's met deze voorvoegsels worden niet bij voorkeur behandeld. Vermijd echter kolommen of kolomaliassen met deze voorvoegsels te gebruiken om onverwacht gedrag te voorkomen.

Gereserveerde catalogusnamen

Azure Databricks reserveert de volgende lijst met catalogusnamen voor huidig of toekomstig gebruik:

  • Catalogusnamen beginnend met SYS
  • Catalogusnamen beginnend met DATABRICKS

Vermijd het gebruik van deze namen.

Gereserveerde schemanamen

Azure Databricks reserveert de volgende lijst met schemanamen voor huidig of toekomstig gebruik:

  • BUILTIN

    Toekomstig gebruik om ingebouwde functies te kwalificeren.

  • SESSION

    Toekomstig gebruik om tijdelijke weergaven en functies te kwalificeren.

  • INFORMATION_SCHEMA

    Bevat het SQL-standaard informatieschema .

  • Schemanamen 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 lijst met SQL2016 trefwoorden wordt alleen ter informatie verstrekt.

  • A

    ALL, ALTER, AND, ANY, ARRAY, AS, AT, AUTHORIZATION

  • B

    TUSSEN, BEIDE, DOOR

  • 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

    ANDERS, EINDE, ONTSNAP, BEHALVE, BESTAAT, EXTERN, UITTREKSEL

  • 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

    VOORLOP, LINKS, ZOALS, LOKAAL

  • N

    NATUURLIJK, NEE, NIET, NULL

  • O

    OF, OP, ALLEEN, OF, VOLGORDE, UIT, BUITEN, OVERLAPT

  • P

    PARTITION, POSITIE, PRIMAIR

  • R

    BEREIK, VERWIJZINGEN, REVOKE, RECHTER, TERUGDRAAIEN, ROLLUP, RIJ, RIJEN

  • S

    SELECT, SESSION_USER, SET, SOMMIGE, START

  • T

    TABLE, TABLESAMPLE, DAN, TIJD, NAAR, NAAI, WAAR, AFKAPPEN

  • 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