Fonction encode

S’applique à :case marquée oui Databricks SQL case marquée oui Databricks Runtime

Retourne la représentation binaire d’une chaîne à l’aide du codage de caractères charSet.

Syntaxe

encode(expr, charSet)

Arguments

  • expr : une expression STRING à encoder.
  • charSet : une expression STRING spécifiant l’encodage.

Retours

BINARY.

Les encodages de jeu de caractères suivants sont pris en charge (sans respect de la casse) :

  • 'US-ASCII' : ASCII sept bits, ISO646-US.
  • 'ISO-8859-1' : alphabet latin ISO n° 1, ISO-LATIN-1.
  • 'UTF-8' : format de transformation UCS à huit bits.
  • 'UTF-16BE' : format de transformation UCS à seize bits, ordre d’octet gros-boutiste.
  • 'UTF-16LE' : format de transformation UCS à seize bits, ordre d’octet petit-boutiste.
  • 'UTF-16' : format de transformation UCS à seize bits, ordre d’octet identifié par une marque d’ordre d’octet facultative.

Si charSet n’est pas un encodage pris en charge, Azure Databricks déclenche INVALID_PARAMETER_VALUE. CHARSET.

Si expr contient des caractères qui ne peuvent pas être codés dans charSet, Azure Databricks déclenche MALFORMED_CHARACTER_CODING.

Conditions d’erreur courantes

Exemples

-- 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