Funzioni aggiuntive

REGEXP_REPLACE(stringa, modello, sostituzione)

Restituisce una copia della stringa data in cui la stringa sostitutiva prende il posto del modello dell’espressione regolare. 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.

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 correnti 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(Il collegamento viene aperto in una nuova finestra) nella guida online per l’utente di ICU.

Esempio

REGEXP_REPLACE('abc 123', '\s', '-') = 'abc-123'

REGEXP_MATCH(stringa, modello)

Restituisce true se una sottostringa della stringa specificata corrisponde al modello dell’espressione regolare. 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.

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 correnti 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(Il collegamento viene aperto in una nuova finestra) nella guida online per l’utente di ICU.

Esempio

REGEXP_MATCH('-([1234].[The.Market])-','\[\s*(\w*\.)(\w*\s*\])')=true

REGEXP_EXTRACT(stringa, modello)

Restituisce la porzione di stringa che corrisponde al modello dell’espressione regolare. 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.

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 correnti 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(Il collegamento viene aperto in una nuova finestra) nella guida online per l’utente di ICU.

Esempio

REGEXP_EXTRACT('abc 123', '[a-z]+\s+(\d+)') = '123'

REGEXP_EXTRACT_NTH(stringa, modello, indice)

Restituisce 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. 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.

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 correnti 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(Il collegamento viene aperto in una nuova finestra) nella guida online per l’utente di ICU.

Esempio

REGEXP_EXTRACT_NTH('abc 123', '([a-z]+)\s+(\d+)', 2) = '123'

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'

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!