Função encode

Aplica-se a:assinalado Sim Databricks SQL assinalado Sim Databricks Runtime

Retorna a representação binária de uma cadeia de caracteres usando a codificação de charSet caracteres.

Sintaxe

encode(expr, charSet)

Argumentos

  • expr: Uma STRING expressão a ser codificada.
  • charSet: Uma STRING expressão que especifica a codificação.

Devoluções

Um BINARY.

As seguintes codificações de conjunto de caracteres são suportadas (não diferenciam maiúsculas de minúsculas):

  • 'US-ASCII': ASCII de sete bits, ISO646-US.
  • 'ISO-8859-1': Alfabeto latino ISO No. 1, ISO-LATIN-1.
  • 'UTF-8': Formato de transformação UCS de oito bits.
  • 'UTF-16BE': Formato de transformação UCS de dezesseis bits, ordem de bytes big-endian.
  • 'UTF-16LE': Formato de transformação UCS de dezesseis bits, ordem de bytes little-endian.
  • 'UTF-16': Formato de transformação UCS de dezesseis bits, ordem de bytes identificada por uma marca opcional de ordem de bytes.

Se charSet não for uma codificação suportada, Azure Databricks eleva INVALID_PARAMETER_VALUE. CHARSET.

Se expr contiver caracteres que não podem ser codificados em charSet, Azure Databricks levanta MALFORMED_CHARACTER_CODING.

Condições de erro comuns

Exemplos

-- Wrap encode in hex to normalize UI dependent BINARY output.
> SELECT hex(encode('Spark SQL', 'UTF-16'));
 FEFF0053007000610072006B002000530051004C

> SELECT hex(encode('Spark SQL', 'US-ASCII'));
537061726B2053514C

> SELECT decode(X'FEFF0053007000610072006B002000530051004C', 'UTF-16')
 Spark SQL

-- U+00E9 (é) cannot be encoded in US-ASCII.
> SELECT encode('café', 'US-ASCII');
  Error: MALFORMED_CHARACTER_CODING