Funções adicionais
REGEXP_REPLACE(string, padrão, substituição)
Retorna uma cópia de uma cadeia de caracteres determinada, onde o padrão de expressão regular é substituído pela cadeia de caracteres de substituição. Esta função está disponível para fontes de dados de arquivo de texto, Hadoop Hive, Google BigQuery, PostgreSQL, Extração de dados do Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versão 14.1 e posterior), Snowflake e Oracle.
Para extrações de dados do Tableau, o padrão e a reposição devem ser constantes.
Para obter mais informações sobre sintaxe de expressão regular, consulte a documentação da sua fonte de dados. Para extrações do Tableau, a sintaxe da expressão regular atende aos padrões atuais de ICU (International Components for Unicode), um projeto de fonte aberta de bibliotecas de C/C++ e Java antigas para suporte de Unicode, internacionalização de software e globalização de software. Consulte a página Regular Expressions(O link abre em nova janela) (Expressões regulares) no ICU User Guide, disponível on-line.
Exemplo
REGEXP_REPLACE('abc 123', '\s', '-') = 'abc-123'
REGEXP_MATCH(cadeia de caracteres, padrão)
Retorna true se uma subcadeia de caracteres de uma cadeia de caracteres específica corresponder ao padrão de expressão regular. Esta função está disponível para fontes de dados de arquivo de texto, Google BigQuery, PostgreSQL, Extração de dados do Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versão 14.1 e posterior), Impala 2.3.0 (por meio de fontes de dados do Cloudera Hadoop), Snowflake e Oracle.
Para extrações de dados do Tableau, o padrão deve ser uma constante.
Para obter mais informações sobre sintaxe de expressão regular, consulte a documentação da sua fonte de dados. Para extrações do Tableau, a sintaxe da expressão regular atende aos padrões atuais de ICU (International Components for Unicode), um projeto de fonte aberta de bibliotecas de C/C++ e Java antigas para suporte de Unicode, internacionalização de software e globalização de software. Consulte a página Regular Expressions(O link abre em nova janela) (Expressões regulares) no ICU User Guide, disponível on-line.
Exemplo
REGEXP_MATCH('-([1234].[The.Market])-','\[\s*(\w*\.)(\w*\s*\])')=true
REGEXP_EXTRACT(cadeia de caracteres, padrão)
Retorna a parte de uma cadeia de caracteres que corresponda ao padrão de expressão regular. Esta função está disponível para fontes de dados de arquivo de texto, Hadoop Hive, Google BigQuery, PostgreSQL, Extração de dados do Tableau, Microsoft Excel, Salesforce, Vertica, Pivotal Greenplum, Teradata (versão 14.1 e posterior), Snowflake e Oracle.
Para extrações de dados do Tableau, o padrão deve ser uma constante.
Para obter mais informações sobre sintaxe de expressão regular, consulte a documentação da sua fonte de dados. Para extrações do Tableau, a sintaxe da expressão regular atende aos padrões atuais de ICU (International Components for Unicode), um projeto de fonte aberta de bibliotecas de C/C++ e Java antigas para suporte de Unicode, internacionalização de software e globalização de software. Consulte a página Regular Expressions(O link abre em nova janela) (Expressões regulares) no ICU User Guide, disponível on-line.
Exemplo
REGEXP_EXTRACT('abc 123', '[a-z]+\s+(\d+)') = '123'
REGEXP_EXTRACT_NTH(cadeia de caracteres, padrão, início)
Retorna a parte de uma cadeia de caracteres que corresponda ao padrão de expressão regular. A subcadeia é comparada com o grupo de captura nth, onde n é o índice dado. Se o índice for 0, toda a cadeia de caracteres é retornada. Esta função está disponível para fontes de dados de arquivo de texto, PostgreSQL, Extração de dados do Tableau, Microsoft Excel, Salesforce, HP Vertica, Pivotal Greenplum, Teradata (versão 14.1 e posterior) e Oracle.
Para extrações de dados do Tableau, o padrão deve ser uma constante.
Para obter mais informações sobre sintaxe de expressão regular, consulte a documentação da sua fonte de dados. Para extrações do Tableau, a sintaxe da expressão regular atende aos padrões atuais de ICU (International Components for Unicode), um projeto de fonte aberta de bibliotecas de C/C++ e Java antigas para suporte de Unicode, internacionalização de software e globalização de software. Consulte a página Regular Expressions(O link abre em nova janela) (Expressões regulares) no ICU User Guide, disponível on-line.
Exemplo
REGEXP_EXTRACT_NTH('abc 123', '([a-z]+)\s+(\d+)', 2) = '123'
Funções específicas do Hadoop Hive
Observação: somente as funções PARSE_URL e PARSE_URL_QUERY estão disponíveis para as fontes de dados do Cloudera Impala.
GET_JSON_OBJECT(cadeia de caracteres JSON, caminho JSON)
Retorna o objeto JSON dentro da cadeia de caracteres JSON baseando-se no caminho JSON.
PARSE_URL(string, parte_url)
Retorna um componente da cadeia de caractere de URL dada quando o componente é definido por parte_url. Valores url_part válidos incluem: 'HOST', 'PATH', 'QUERY', 'REF', 'PROTOCOL', 'AUTHORITY', 'FILE' e 'USERINFO'.
Exemplo
PARSE_URL('http://www.tableau.com', 'HOST') = 'www.tableau.com'
PARSE_URL_QUERY(string, chave)
Retorna o valor do parâmetro de consulta especificado na cadeia de caracteres de URL dada. O parâmetro de consulta é definido pela chave.
Exemplo
PARSE_URL_QUERY('http://www.tableau.com?page=1&cat=4', 'page') = '1'
XPATH_BOOLEAN(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna verdadeiro se a expressão XPath corresponde a um nó ou é avaliada como verdadeira.
Exemplo
XPATH_BOOLEAN('<values> <value id="0">1</value><value id="1">5</value>', 'values/value[@id="1"] = 5') = true
XPATH_DOUBLE(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o valor de ponto flutuante da expressão XPath.
Exemplo
XPATH_DOUBLE('<values><value>1.0</value><value>5.5</value> </values>', 'sum(value/*)') = 6.5
XPATH_FLOAT(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o valor de ponto flutuante da expressão XPath.
Exemplo
XPATH_FLOAT('<values><value>1.0</value><value>5.5</value> </values>','sum(value/*)') = 6.5
XPATH_INT(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o valor numérico da expressão XPath, ou zero, se a expressão XPath não pode ser avaliada como número.
Exemplo
XPATH_INT('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6
XPATH_LONG(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o valor numérico da expressão XPath, ou zero, se a expressão XPath não pode ser avaliada como número.
Exemplo
XPATH_LONG('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6
XPATH_SHORT(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o valor numérico da expressão XPath, ou zero, se a expressão XPath não pode ser avaliada como número.
Exemplo
XPATH_SHORT('<values><value>1</value><value>5</value> </values>','sum(value/*)') = 6
XPATH_STRING(cadeia de caracteres XML, cadeia de caracteres da expressão XPath)
Retorna o texto do primeiro nó correspondente.
Exemplo
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'
Funções específicas do Google BigQuery
DOMAIN(string_url)
Dada uma cadeia de caracteres de URL, retorna o domínio como uma cadeia de caractere.
Exemplo
DOMAIN('http://www.google.com:80/index.html') = 'google.com'
GROUP_CONCAT(expressão)
Concatena os valores de cada registro em uma única string delimitada por vírgula. Esta função atua como uma SUM() para strings.
Exemplo
GROUP_CONCAT(Region) = "Central,East,West"
HOST(string_url)
Dada uma cadeia de caracteres de URL, retorna o nome do host como uma cadeia de caracteres.
Exemplo
HOST('http://www.google.com:80/index.html') = 'www.google.com:80'
LOG2(número)
Retorna o logaritmo de um número na base 2.
Exemplo
LOG2(16) = '4.00'
LTRIM_THIS(string, string)
Retorna a primeira cadeia de caracteres com qualquer ocorrência da segunda cadeia de caracteres à esquerda removida.
Exemplo
LTRIM_THIS('[-Sales-]','[-') = 'Sales-]'
RTRIM_THIS(cadeia de caracteres, cadeia de caracteres)
Retorna a primeira cadeia de caracteres com qualquer ocorrência da segunda cadeia de caracteres à direita removida.
Exemplo
RTRIM_THIS('[-Market-]','-]') = '[-Market'
TIMESTAMP_TO_USEC(expressão)
Converte um tipo de dado TIMESTAMP em um carimbo de data/hora UNIX em microssegundos.
Exemplo
TIMESTAMP_TO_USEC(#2012-10-01 01:02:03#)=1349053323000000
USEC_TO_TIMESTAMP(expressão)
Converte um carimbo de data/hora UNIX em microssegundos em um tipo de dados TIMESTAMP.
Exemplo
USEC_TO_TIMESTAMP(1349053323000000) = #2012-10-01 01:02:03#
TLD(string_url)
Dada uma cadeia de caracteres de URL, retorna o domínio de nível superior mais qualquer domínio de país na URL.
Exemplo
TLD('http://www.google.com:80/index.html') = '.com'
TLD('http://www.google.co.uk:80/index.html') = '.co.uk'