Compartilhar via


TipoSTRING

Aplica-se a:marca de seleção positiva SQL do Databricks marca de seleção positiva Runtime do Databricks

O tipo dá suporte a sequências de caracteres de qualquer comprimento maior ou igual a 0.

Sintaxe

STRING

Literais

[r|R]'c [ ... ]'
  • r ou R

    Aplica-se a:verificação marcada como sim SQL do Databricks verificação marcada como sim Databricks Runtime 10.4 LTS e versões posteriores

    Prefixo opcional que indica um literal bruto.

  • c

    Qualquer caractere do conjunto de caracteres Unicode.

As seguintes sequências de escape são reconhecidas em literais de cadeia de caracteres regulares (sem o prefixo r) e substituídas de acordo com as seguintes regras:

  • \0 ->\u0000, caractere unicode com o código 0;
  • \b ->\u0008, backspace;
  • \n ->\u000a, linefeed;
  • \r ->\u000d, retorno de carro;
  • \t ->\u0009, guia horizontal;
  • \Z ->\u001A, substituto;
  • \% ->\%;
  • \_ ->\_;
  • \<other char> -><other char>, pule a barra e deixe o caractere como está.

Se a cadeia de caracteres for prefixada com r não haverá caractere de escape.

A ordenação inerente de um tipo de STRING é UTF8_BINARY.

Para classificação que ignora os espaços finais, use a cláusula COLLATE UTF8_BINARY_RTRIM.

Confira as regras de precedência de ordenação para obter mais informações.

Observação

Embora você possa usar aspas duplas (") em vez de aspas simples (') para delimitar um literal de cadeia de caracteres, isso é desincentivado porque não é o SQL padrão.

Aviso

Algumas interfaces de cliente executam substituições de macro em cadeias de caracteres antes de enviá-las para o analisador do SQL. Por exemplo, em um notebook do Databricks, o sinal $ (dólar) introduz um widget e precisa ser escapado com \$ para ser preservado em um literal de cadeia de caracteres.

Exemplos

> SELECT 'Spark';
  Spark

> SELECT CAST(5 AS STRING);
  5

> SELECT 'O\'Connell'
  O'Connell

> SELECT 'Some\nText'
  Some
  Text

> SELECT r'Some\nText'
  Some\nText

> SELECT '서울시'
  서울시

> SELECT ''

> SELECT '\\'
  \

> SELECT r'\\'
  \\

-- From a notbook cell (without a widget 'e' being defined)
> SELECT 'Hou$e', 'Hou\$e', r'Hou$e', r'Hou\$e'
  Hou  Hou$e  Hou  Hou$e

> SELECT COLLATION(‘hello’);
  UTF8_BINARY