Funzioni aggiuntive (Regex, Hadoop Hive, Google Big Query)

Funzioni aggiuntive (Regex, Hadoop Hive, Google Big Query)Vedi anche:

Funzioni pass-through (RAWSQL).

Espressioni regolari 

Per informazioni sulla sintassi delle espressioni regolari, consulta la documentazione dell’origine dati. Per gli estratti di Tableau, la sintassi delle espressioni regolari è conforme agli standard dell’ICU (International Components for Unicode), un progetto open source di librerie mature C/C++ e Java per il supporto Unicode, l’internazionalizzazione software e la globalizzazione software. Consulta la pagina Regular Expressions nella guida online per l’utente di ICU.

REGEXP_REPLACE

SintassiREGEXP_REPLACE(string, pattern, replacement)
OutputStringa
DefinizioneRestituisce una copia della stringa data in cui la stringa sostitutiva prende il posto del modello dell’espressione regolare.
Esempio
REGEXP_REPLACE('abc 123', '\s', '-') = 'abc-123'
Note

Questa funzione è disponibile per le origini dati file di testo, Hadoop Hive, Google BigQuery, PostgreSQL, Estrazione dati Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versione 14.1 e successive), Snowflake e Oracle.

Per le estrazioni dei dati di Tableau, il modello e la stringa sostitutiva devono essere costanti.

REGEXP_MATCH

SintassiREGEXP_MATCH(string, pattern)
OutputBooleano
DefinizioneRestituisce true se una sottostringa della stringa specificata corrisponde al modello dell’espressione regolare.
Esempio
REGEXP_MATCH('-([1234].[The.Market])-','\[\s*(\w*\.)(\w*\s*\])')=true
Note

Questa funzione è disponibile per le origini dati file di testo, Google BigQuery, PostgreSQL, Estrazione dati Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versione 14.1 e successive, Hadoop), Impala 2.3.0 (tramite origini dati Cloudera Hadoop), Snowflake e Oracle.

Per le estrazioni dei dati di Tableau, il modello deve essere una costante.

REGEXP_EXTRACT

SintassiREGEXP_EXTRACT(string, pattern)
OutputStringa
DefinizioneRestituisce la porzione di stringa che corrisponde al modello dell’espressione regolare.
Esempio
REGEXP_EXTRACT('abc 123', '[a-z]+\s+(\d+)') = '123'
Note

Questa funzione è disponibile per le origini dati file di testo, Hadoop Hive, Google BigQuery, PostgreSQL, Estrazione dati Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versione 14.1 e successive), Snowflake e Oracle.

Per le estrazioni dei dati di Tableau, il modello deve essere una costante.

REGEXP_EXTRACT_NTH

SintassiREGEXP_EXTRACT_NTH(string, pattern, index)
OutputStringa
DefinizioneRestituisce la porzione di stringa che corrisponde al modello dell’espressione regolare. La porzione della stringa è abbinata al gruppo di acquisizione nth, dove n è l’indice dato. Se l’indice è 0, viene restituita l’intera stringa.
Esempio
REGEXP_EXTRACT_NTH('abc 123', '([a-z]+)\s+(\d+)', 2) = '123'
Note

Questa funzione è disponibile per le origini dati file di testo, PostgreSQL, Estrazione dati Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versione 14.1 e successive) e Oracle.

Per le estrazioni dei dati di Tableau, il modello deve essere una costante.

Funzioni specifiche di Hadoop Hive

Nota: per le origini dati di Cloudera Impala, sono disponibili solo le funzioni PARSE_URL e PARSE_URL_QUERY.

GET_JSON_OBJECT(stringa JSON, percorso JSON)

Restituisce l’oggetto JSON all’interno della stringa JSON in base al percorso JSON.

PARSE_URL(stringa, parte_url)

Restituisce un componente della stringa URL data, definito da parte_url. I valori validi di parte_url includono: "HOST", "PATH", "QUERY", "REF", "PROTOCOL", "AUTHORITY", "FILE" e "USERINFO".

Esempio

PARSE_URL('http://www.tableau.com', 'HOST') = 'www.tableau.com'

PARSE_URL_QUERY(stringa, chiave)

Restituisce il valore del parametro della query specificato nella stringa URL data. Il parametro della query è definito dalla chiave.

Esempio

PARSE_URL_QUERY('http://www.tableau.com?page=1&cat=4', 'page') = '1'

XPATH_BOOLEAN(stringa XML, stringa dell’espressione XPath)

Restituisce true se l’espressione XPath corrisponde a un nodo o se viene valutata true.

Esempio

XPATH_BOOLEAN('<values> <value id="0">1</value><value id="1">5</value>', 'values/value[@id="1"] = 5') = true

XPATH_DOUBLE(stringa XML, stringa dell’espressione XPath)

Restituisce il valore a virgola mobile dell’espressione XPath.

Esempio

XPATH_DOUBLE('<values><value>1.0</value><value>5.5</value> </values>', 'sum(value/*)') = 6.5

XPATH_FLOAT(stringa XML, stringa dell’espressione XPath)

Restituisce il valore a virgola mobile dell’espressione XPath.

Esempio

XPATH_FLOAT('<values><value>1.0</value><value>5.5</value> </values>','sum(value/*)') = 6.5

XPATH_INT(stringa XML, stringa dell’espressione XPath)

Restituisce il valore numerico dell’espressione XPath oppure zero se l’espressione XPath non può essere valutata come un numero.

Esempio

XPATH_INT('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6

XPATH_LONG(stringa XML, stringa dell’espressione XPath)

Restituisce il valore numerico dell’espressione XPath oppure zero se l’espressione XPath non può essere valutata come un numero.

Esempio

XPATH_LONG('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6

XPATH_SHORT(stringa XML, stringa dell’espressione XPath)

Restituisce il valore numerico dell’espressione XPath oppure zero se l’espressione XPath non può essere valutata come un numero.

Esempio

XPATH_SHORT('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6

XPATH_STRING(stringa XML, stringa dell’espressione XPath)

Restituisce il testo del primo nodo corrispondente.

Esempio

XPATH_STRING('<sites ><url domain="org">http://www.w3.org</url> <url domain="com">http://www.tableau.com</url></sites>', 'sites/url[@domain="com"]') = 'http://www.tableau.com'

Funzioni specifiche di Google BigQuery

DOMAIN(stringa_url)

Data una stringa URL, restituisce il dominio come stringa.

Esempio

DOMAIN('http://www.google.com:80/index.html') = 'google.com'

GROUP_CONCAT(espressione)

Concatena i valori di ogni record in una singola stringa delimitata da virgole. Questa funzione agisce come una funzione SUM() per le stringhe.

Esempio

GROUP_CONCAT(Region) = "Central,East,West"

HOST(stringa_url)

Data una stringa URL, restituisce il nome host come stringa.

Esempio

HOST('http://www.google.com:80/index.html') = 'www.google.com:80'

LOG2(numero)

Restituisce il logaritmo in base 2 di un numero.

Esempio

LOG2(16) = '4.00'

LTRIM_THIS(stringa, stringa)

Restituisce la prima stringa con l’eventuale occorrenza iniziale della seconda stringa rimossa.

Esempio

LTRIM_THIS('[-Sales-]','[-') = 'Sales-]'

RTRIM_THIS(stringa, stringa)

Restituisce la prima stringa con l’eventuale occorrenza finale della seconda stringa rimossa.

Esempio

RTRIM_THIS('[-Market-]','-]') = '[-Market'

TIMESTAMP_TO_USEC(espressione)

Converte un tipo di dati TIMESTAMP in un timestamp UNIX in microsecondi.

Esempio

TIMESTAMP_TO_USEC(#2012-10-01 01:02:03#)=1349053323000000

USEC_TO_TIMESTAMP(espressione)

Converte un timestamp UNIX in microsecondi in un tipo di dati TIMESTAMP.

Esempio

USEC_TO_TIMESTAMP(1349053323000000) = #2012-10-01 01:02:03#

TLD(stringa_url)

Data una stringa URL, restituisce il dominio di primo livello più eventuali domini nazionali nell’URL.

Esempio

TLD('http://www.google.com:80/index.html') = '.com'

TLD('http://www.google.co.uk:80/index.html') = '.co.uk'