Identifiers
Область применения: Databricks SQL Databricks Runtime
Идентификатор — это строка, используемая для идентификации объекта, например таблицы, представления, схемы или столбца. Azure Databricks поддерживает неотеченные (обычные) идентификаторы и идентификаторы с разделителями, которые заключены в обратные символы.
Идентификаторы не учитывает регистр при ссылке.
Для идентификаторов, сохраненных с хранилищем метаданных и источником данных, разрешенные символы, могут быть ограничены.
Дополнительные сведения об использовании идентификаторов см. в разделе "Имена ".
Не разделенные идентификаторы
Синтаксис
{ letter | '_' } [ letter | digit | '_' ] [ ... ]
Параметры
- буква: любая буква ASCII из
Z
-A
или.a
-z
- цифры: любое число ASCII от
0
.9
Примечание.
Если и spark.sql.ansi.enforceReservedKeywords
задано true
значение Databricks Runtime, spark.sql.ansi.enabled
вы не можете использовать зарезервированное ключевое слово ANSI SQL в качестве идентификатора, отличного от разделителей. Дополнительные сведения см. в статье Соответствие ANSI.
Идентификаторы с разделителем
Синтаксис
`c [ ... ]`
Параметры
- c: любой символ из набора символов Юникода. Используется
`
для побега`
.
Примеры
-- 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