Funzione to_binary
Si applica a: Databricks SQL preview Databricks Runtime 11.3 LTS e versioni successive
Restituisce expr
il cast a BINARY in fmt
base a .
Sintassi
to_binary(expr [, fmt] )
Argomenti
expr
: espressione STRING di cui eseguire il cast.fmt
: valore letterale STRING che descrive come interpretareexpr
.
Valori restituiti
BINARIO.
Note
Se fmt
viene specificato, deve essere uno di (senza distinzione tra maiuscole e minuscole):
'HEX'
expr
deve essere una stringa esadecimale. Ogni carattere deve essere una cifra esadecimale e deve essere presente un numero pari di cifre. Il risultato è la rappresentazione binaria della stringa esadecimale.Se
expr
non è una stringa esadecimale valida, Azure Databricks restituisce un errore CONVERSION_INVALID_INPUT . Usare try_to_binary per restituire invece un valore NULL.'BASE64'
expr
deve essere una stringa con codifica RFC 4648 §4: base64 (standard). Il risultato è costituito dai dati binari decodificati. In RFC 4648 §4 qualsiasi stringa bae64 non valida genererà un errore CONVERSION_INVALID_INPUT .'UTF-8'
oppure'UTF8'
expr
viene interpretato come stringa UTF-8. Il risultato è la rappresentazione binaria della stringa.
L'impostazione predefinita è fmt
è 'HEX'
.
Esempi
> SELECT cast(to_binary('537061726B') AS STRING);
Spark
> SELECT cast(to_binary('hello', 'hex') AS STRING);
Error: CONVERSION_INVALID_INPUT
> SELECT cast(try_to_binary('hello', 'hex') AS STRING);
NULL
> SELECT cast(to_binary('537061726B', 'hex') AS STRING);
Spark
> SELECT cast(to_binary('U3Bhcms=', 'base64') AS STRING);
Spark
> SELECT cast(to_binary('U3Bhxcms=', 'base64') AS STRING);
Error: CONVERSION_INVALID_INPUT
> SELECT cast(try_to_binary('U3Bhxcms=', 'base64') AS STRING);
NULL
> SELECT hex(to_binary('서울시(Seoul)', 'UTF-8'));
EC849CEC9AB8EC8B9C2853656F756C29