Identifiers

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime

En identifierare är en sträng som används för att identifiera ett objekt, till exempel en tabell, vy, schema eller kolumn. Azure Databricks stöder icke-avgränsade (vanliga) identifierare och avgränsade identifierare, som omges av backticks.

Identifierare är skiftlägesokänsliga när de refereras.

För identifierare som bevaras med ett metaarkiv och datakälla kan de tillåtna tecknen begränsas.

Mer information om den specifika användningen av identifierare finns i Namn .

Icke avgränsade identifierare

Syntax

{ letter | '_' } [ letter | digit | '_' ] [ ... ]

Parametrar

  • letter: Alla ASCII-bokstäver frånZ-A eller .a-z
  • digit:Any ASCII numera från 0 till 9.

Kommentar

Om och spark.sql.ansi.enforceReservedKeywords är inställda på truei Databricks Runtime spark.sql.ansi.enabled kan du inte använda ett reserverat nyckelord för ANSI SQL som en icke-avgränsad identifierare. Mer information finns i ANSI-efterlevnad.

Avgränsade identifierare

Syntax

`c [ ... ]`

Parametrar

  • c: Alla tecken från Unicode-teckenuppsättningen. Använd ` för att fly ` sig själv.

Exempel

-- This statement fails because the undelimited identifier uses a non-ASCII letter.
> DESCRIBE SELECT 5 AS Ä;
 INVALID_IDENTIFIER

-- You can delimit the identifier to use a non-ASCII letter
> DESCRIBE SELECT 5 AS `Ä`;
 Ä

-- An identifier with dash needs to be delimited
> DESCRIBE SELECT 5 AS `a-b`;
 a-b

-- An identifier with a space needs to be delimited
> DESCRIBE SELECT 5 AS `a b`;
 a b

-- An identifier with a special character needs to be delimited
> DESCRIBE SELECT 5 AS `a@b`;
 a@b

-- An identifier with a Chinese character needs to be delimited
> DESCRIBE SELECT 5 AS `a中b`;
 a中b

-- An identifier with a backtick needs to be delimited and escaped.
> DESCRIBE SELECT 5 AS `a``b`;
 a`b