Identificadores
Se aplica a: Databricks SQL Databricks Runtime
Un identificador es una cadena que se usa para identificar un objeto como una tabla, vista, esquema o columna. Azure Databricks admite identificadores no delimitados (normales) y identificadores delimitados, que se incluyen dentro de los versos.
Los identificadores no distinguen entre mayúsculas y minúsculas cuando se hace referencia a ellos.
En el caso de los identificadores persistentes con un metastore y un origen de datos, los caracteres permitidos se pueden restringir.
Consulte Nombres para obtener más información sobre el uso específico de identificadores.
Identificadores no delimitados
Sintaxis
{ letter | '_' } [ letter | digit | '_' ] [ ... ]
Parámetros
- letra: cualquier letra ASCII de
A
-Z
oa
-z
. - dígito: cualquier número ASCII de
0
a9
.
Nota:
En Databricks Runtime, si spark.sql.ansi.enabled
y spark.sql.ansi.enforceReservedKeywords
se establecen en true
, no puede usar una palabra clave reservada ANSI SQL como identificador no delimitado. Para obtener más información, vea Cumplimiento de ANSI.
Identificadores delimitados
Sintaxis
`c [ ... ]`
Parámetros
- c: cualquier carácter del juego de caracteres Unicode. Use
`
para escapar`
.
Ejemplos
-- 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