Decodifica una cadena con codificación URL en formato MIME application/x-www-form-urlencoded y la convierte en una cadena estándar.
Límites
Compatible únicamente con Realtime Compute for Apache Flink que usa Ververica Runtime (VVR) 8.0.8 o versiones posteriores.
Sintaxis
VARCHAR URL_DECODE(VARCHAR input)
VARCHAR URL_DECODE(VARCHAR input, VARCHAR encoding)
Parámetros
|
Parámetro |
Tipo de dato |
Descripción |
|
|
VARCHAR |
Cadena de entrada con codificación URL. |
|
|
VARCHAR |
Codificación de caracteres para decodificar, como GBK o UTF-8. El valor predeterminado es UTF-8. Opcional. |
Si input contiene secuencias de codificación porcentual no válidas, la decodificación falla y se devuelve NULL. La codificación especificada debe coincidir con la usada al codificar originalmente la cadena; de lo contrario, la salida podría mostrar caracteres incorrectos o producirse un error de análisis sintáctico.
Ejemplos
Ejemplo 1: Decodificación UTF-8 predeterminada
Datos de entrada (T1)
|
id |
input (VARCHAR) |
|
1 |
|
|
2 |
|
|
3 |
|
|
4 |
|
|
5 |
|
|
6 |
|
Instrucción de prueba
SELECT
id,
URL_DECODE(input) AS `value`
FROM
T1;
Resultado
|
id (INT) |
value (VARCHAR) |
|
1 |
|
|
2 |
|
|
3 |
|
|
4 |
|
|
5 |
|
|
6 |
|
La fila 1 devuelve la entrada sin cambios porque no tiene codificación URL. La fila 6 devuelve NULL porque %% es una secuencia de codificación porcentual no válida.
Ejemplo 2: Decodificación con una codificación de caracteres específica
Datos de entrada (T2)
|
id (INT) |
input (VARCHAR) |
encoding (VARCHAR) |
|
1 |
|
UTF-8 |
|
2 |
|
gb2312 |
Instrucción de prueba
SELECT
id,
URL_DECODE(input, encoding) AS `value`
FROM
T2;
Resultado
|
id (INT) |
value (VARCHAR) |
|
1 |
|
|
2 |
|
La fila 1 devuelve NULL porque el carácter % final es una secuencia de codificación porcentual incompleta.