15.13. URL Functions
Extraction Functions
The URL extraction functions extract components from HTTP URLs (or any valid URIs conforming to RFC 2396). The following syntax is supported:
[protocol:][//host[:port]][path][?query][#fragment]
The extracted components do not contain URI syntax separators
such as : or ?.
- 
url_extract_fragment(url) → varchar
- Returns the fragment identifier from - url.
- 
url_extract_host(url) → varchar
- Returns the host from - url.
- 
url_extract_parameter(url, name) → varchar
- Returns the value of the first query string parameter named - namefrom- url. Parameter extraction is handled in the typical manner as specified by RFC 1866#section-8.2.1.
- 
url_extract_path(url) → varchar
- Returns the path from - url.
- 
url_extract_port(url) → bigint
- Returns the port number from - url.
- 
url_extract_protocol(url) → varchar
- Returns the protocol from - url.
- 
url_extract_query(url) → varchar
- Returns the query string from - url.
Encoding Functions
- 
url_encode(value) → varchar
- Escapes - valueby encoding it so that it can be safely included in URL query parameter names and values:- Alphanumeric characters are not encoded.
- The characters .,-,*and_are not encoded.
- The ASCII space character is encoded as +.
- All other characters are converted to UTF-8 and the bytes are encoded
as the string %XXwhereXXis the uppercase hexadecimal value of the UTF-8 byte.
 
- 
url_decode(value) → varchar
- Unescapes the URL encoded - value. This function is the inverse of- url_encode().