Extrae un componente específico de una cadena URL y devuelve su valor como VARCHAR.
Devuelve NULL si urlStr es NULL.
Sintaxis
VARCHAR PARSE_URL(VARCHAR urlStr, VARCHAR partToExtract [, VARCHAR key])
Argumentos
|
Argument |
Data type |
Description |
|
|
VARCHAR |
URL para analizar. |
|
|
VARCHAR |
Componente de la URL para extraer. Valores válidos: |
|
|
VARCHAR |
Clave del parámetro de consulta cuyo valor se extraerá. Opcional. |
Valores válidos para partToExtract
|
Value |
Description |
Example |
|
|
Nombre de dominio o dirección IP. |
|
|
|
Componente de ruta, sin incluir la cadena de consulta. |
|
|
|
Cadena de consulta completa o valor de una clave específica cuando se proporciona |
|
|
|
Identificador de fragmento después de |
|
|
|
Esquema de la URL. |
|
|
|
Ruta y cadena de consulta combinadas. |
|
|
|
Host y puerto combinados. |
|
|
|
Información de usuario antes de |
|
Ejemplo
Tabla de entrada T1:
|
url1 (VARCHAR) |
url2 (VARCHAR) |
|
|
NULL |
SELECT PARSE_URL(url1, 'QUERY', 'query') AS var1, -- returns '1'
PARSE_URL(url1, 'QUERY') AS var2, -- returns 'query=1'
PARSE_URL(url1, 'HOST') AS var3, -- returns 'facebook.com'
PARSE_URL(url1, 'PATH') AS var4, -- returns '/path/p1.php'
PARSE_URL(url1, 'REF') AS var5, -- returns NULL (no fragment)
PARSE_URL(url1, 'PROTOCOL') AS var6, -- returns 'http'
PARSE_URL(url1, 'FILE') AS var7, -- returns '/path/p1.php?query=1'
PARSE_URL(url1, 'AUTHORITY') AS var8, -- returns 'facebook.com'
PARSE_URL(url1, 'USERINFO') AS var9, -- returns NULL (no userinfo)
PARSE_URL(url2, 'QUERY') AS var10 -- returns NULL (urlStr is NULL)
FROM T1;
Resultado:
|
var1 |
var2 |
var3 |
var4 |
var5 |
|
1 |
query=1 |
facebook.com |
/path/p1.php |
NULL |
|
var6 |
var7 |
var8 |
var9 |
var10 |
|
http |
/path/p1.php?query=1 |
facebook.com |
NULL |
NULL |
Notas de uso
Si
urlStres NULL, todos los resultados son NULL.