- Categorias:
Funções de cadeia de caracteres e binários (Codificação/Decodificação)
BASE64_DECODE_STRING¶
Decodifica uma cadeia codificada em Base64 para uma cadeia de caracteres.
- Consulte também:
Sintaxe¶
BASE64_DECODE_STRING( <input> [ , <alphabet> ] )
Argumentos¶
Obrigatório:
input
Uma expressão de cadeia de caracteres codificada em Base64.
Opcional:
alphabet
Uma cadeia de caracteres que tem até três caracteres ASCII:
Os dois primeiros caracteres na cadeia de caracteres especificam os dois últimos caracteres (índices 62 e 63) no alfabeto usado para codificar a entrada:
A
aZ
(índices 0-25)a
az
(índices 26-51)0
a9
(índices 52-61)+
e/
(índices 62, 63)
Padrões:
+
e/
O terceiro caractere na cadeia de caracteres especifica o caractere usado para preenchimento.
Padrão:
=
Retornos¶
Uma cadeia de caracteres.
Notas de uso¶
Os caracteres da cadeia de caracteres
alphabet
são analisados em posição; para especificar caracteres diferentes na segunda ou terceira posição da cadeia de caracteres, você deve especificar explicitamente todos os caracteres anteriores, mesmo que deseje usar os padrões.Por exemplo:
+$
especifica o padrão (+
) para o índice 62 e um caractere diferente ($
) para o índice 63; nenhum caractere é explicitamente especificado para preenchimento, portanto o caractere padrão (=
) será usado.+/%
especifica os padrões (+
e/
) para índices 62 e 63, e especifica um caractere diferente (%
) para preenchimento.
A cadeia de caracteres
alphabet
usada para decodificarinput
deve corresponder à cadeia de caracteres originalmente usada para codificarinput
.
Para obter mais informações sobre o formato base64, consulte base64.
Exemplos¶
Isso mostra um exemplo simples de utilização do BASE64_DECODE_STRING
:
SELECT BASE64_DECODE_STRING('U25vd2ZsYWtl'); +--------------------------------------+ | BASE64_DECODE_STRING('U25VD2ZSYWTL') | |--------------------------------------| | Snowflake | +--------------------------------------+
Isto mostra outro exemplo de utilização do BASE64_DECODE_STRING
:
Criar uma tabela e dados:
CREATE OR REPLACE TABLE base64_table (v VARCHAR, base64_string VARCHAR); INSERT INTO base64_table (v) VALUES ('HELLO'); UPDATE base64_table SET base64_string = BASE64_ENCODE(v);Agora execute uma consulta usando
BASE64_DECODE_STRING
:SELECT v, base64_string, BASE64_DECODE_STRING(base64_string) FROM base64_table; +-------+---------------+-------------------------------------+ | V | BASE64_STRING | BASE64_DECODE_STRING(BASE64_STRING) | |-------+---------------+-------------------------------------| | HELLO | SEVMTE8= | HELLO | +-------+---------------+-------------------------------------+