Funciones adicionales

REGEXP_REPLACE(string, pattern, replacement)

Indica una copia de la cadena dada en la que el patrón de la expresión regular se sustituye por la cadena de sustitución. Esta función está disponible para fuentes de datos de archivos de texto, Hadoop Hive, Google BigQuery, PostgreSQL, extracciones de datos de Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versión 14.1 y posteriores), Snowflake y Oracle.

Para extracciones de datos de Tableau, el patrón y el reemplazo deben ser constantes.

Para obtener información sobre la sintaxis de las expresiones regulares, consulte la documentación de la fuente de datos. En las extracciones de Tableau, la sintaxis de las expresiones regulares se adhiere a los estándares de los ICU (componentes internacionales para Unicode) actuales, un proyecto de código abierto de bibliotecas maduras de C/C++ y Java para la compatibilidad con Unicode y para la internacionalización y globalización de software. Consulte la página Expresiones regulares(El enlace se abre en una ventana nueva) en la guía de usuario de ICU en línea.

Ejemplo

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

REGEXP_MATCH(string, pattern)

Indica true si una subcadena de la cadena especificada coincide con el patrón de la expresión regular. Esta función está disponible para fuentes de datos de archivos de texto, Google BigQuery, PostgreSQL, extracciones de datos de Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versión 14.1 y posteriores), Impala 2.3.0 (a través de fuentes de datos de Cloudera Hoop), Snowflake y Oracle.

En el caso de las extracciones de datos de Tableau, el patrón debe ser una constante.

Para obtener información sobre la sintaxis de las expresiones regulares, consulte la documentación de la fuente de datos. En las extracciones de Tableau, la sintaxis de las expresiones regulares se adhiere a los estándares de los ICU (componentes internacionales para Unicode) actuales, un proyecto de código abierto de bibliotecas maduras de C/C++ y Java para la compatibilidad con Unicode y para la internacionalización y globalización de software. Consulte la página Expresiones regulares(El enlace se abre en una ventana nueva) en la guía de usuario de ICU en línea.

Ejemplo

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

REGEXP_EXTRACT(string, pattern)

Indica la parte de una cadena que coincide con el patrón de la expresión regular. Esta función está disponible para fuentes de datos de archivos de texto, Hadoop Hive, Google BigQuery, PostgreSQL, extracciones de datos de Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versión 14.1 y posteriores), Snowflake y Oracle.

En el caso de las extracciones de datos de Tableau, el patrón debe ser una constante.

Para obtener información sobre la sintaxis de las expresiones regulares, consulte la documentación de la fuente de datos. En las extracciones de Tableau, la sintaxis de las expresiones regulares se adhiere a los estándares de los ICU (componentes internacionales para Unicode) actuales, un proyecto de código abierto de bibliotecas maduras de C/C++ y Java para la compatibilidad con Unicode y para la internacionalización y globalización de software. Consulte la página Expresiones regulares(El enlace se abre en una ventana nueva) en la guía de usuario de ICU en línea.

Ejemplo

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

REGEXP_EXTRACT_NTH(string, pattern, index)

Indica la parte de una cadena que coincide con el patrón de la expresión regular. La subcadena se empareja con el grupo de captura nth, donde n es el índice determinado. Si el índice es 0, se indica toda la cadena. Esta función está disponible para fuentes de datos de archivos de texto, PostgreSQL, extracciones de datos de Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versión 14.1 y posteriores) y Oracle.

En el caso de las extracciones de datos de Tableau, el patrón debe ser una constante.

Para obtener información sobre la sintaxis de las expresiones regulares, consulte la documentación de la fuente de datos. En las extracciones de Tableau, la sintaxis de las expresiones regulares se adhiere a los estándares de los ICU (componentes internacionales para Unicode) actuales, un proyecto de código abierto de bibliotecas maduras de C/C++ y Java para la compatibilidad con Unicode y para la internacionalización y globalización de software. Consulte la página Expresiones regulares(El enlace se abre en una ventana nueva) en la guía de usuario de ICU en línea.

Ejemplo

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

Funciones específicas de Hadoop Hive

Nota: Solo las funciones PARSE_URL y PARSE_URL_QUERY están disponibles para las fuentes de datos de Cloudera Impala.

GET_JSON_OBJECT(JSON string, JSON path)

Indica el objeto JSON de la cadena JSON en función de la ruta JSON.

PARSE_URL(string, url_part)

Indica un componente de la cadena URL determinada donde el componente está definido por parte_url. Los valores parte_url válidos incluyen: 'HOST', 'PATH', 'QUERY', 'REF', 'PROTOCOL', 'AUTHORITY', 'FILE' y 'USERINFO'.

Ejemplo

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

PARSE_URL_QUERY(string, key)

Indica el valor del parámetro de consulta especificado en la cadena URL determinada. La clave define el parámetro de consulta.

Ejemplo

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

XPATH_BOOLEAN(XML string, XPath expression string)

Indica true si la expresión XPath coincide con un nodo o se evalúa en true.

Ejemplo

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

XPATH_DOUBLE(XML string, XPath expression string)

Indica el valor de punto flotante de la expresión XPath.

Ejemplo

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

XPATH_FLOAT(XML string, XPath expression string)

Indica el valor de punto flotante de la expresión XPath.

Ejemplo

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

XPATH_INT(XML string, XPath expression string)

Indica el valor numérico de la expresión XPath o cero si esta no se puede evaluar en un número.

Ejemplo

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

XPATH_LONG(XML string, XPath expression string)

Indica el valor numérico de la expresión XPath o cero si esta no se puede evaluar en un número.

Ejemplo

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

XPATH_SHORT(XML string, XPath expression string)

Indica el valor numérico de la expresión XPath o cero si esta no se puede evaluar en un número.

Ejemplo

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

XPATH_STRING(XML string, XPath expression string)

Indica el texto del primer nodo coincidente.

Ejemplo

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'

Funciones específicas de Google BigQuery

DOMAIN(string_url)

Dada una cadena URL, indica el dominio como una cadena.

Ejemplo

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

GROUP_CONCAT(expression)

Concatena valores de cada registro en una única cadena delimitada por comas. Esta función actúa como SUM() para las cadenas.

Ejemplo

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

HOST(string_url)

Dada una cadena URL, indica el nombre de host como una cadena.

Ejemplo

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

LOG2(number)

Indica el logaritmo de base 2 de un número.

Ejemplo

LOG2(16) = '4.00'

LTRIM_THIS(string, string)

Indica la primera cadena con cualquier ocurrencia inicial de la segunda cadena eliminada.

Ejemplo

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

RTRIM_THIS(string, string)

Indica la primera cadena con cualquier ocurrencia final de la segunda cadena eliminada.

Ejemplo

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

TIMESTAMP_TO_USEC(expression)

Convierte un tipo de datos TIMESTAMP en una marca de tiempo UNIX en microsegundos.

Ejemplo

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

USEC_TO_TIMESTAMP(expression)

Convierte una marca de tiempo UNIX en microsegundos en un tipo de datos TIMESTAMP.

Ejemplo

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

TLD(string_url)

Dada una cadena URL, indica el dominio de nivel superior más cualquier dominio de país en la dirección URL.

Ejemplo

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

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

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!