Referência de funções do Tableau Prep

As funções de cálculo do Tableau Prep permitem usar campos calculados para criar novos dados usando dados que já existem na sua fonte de dados.

Funções de número

SintaxeDescrição
ABS(number)Retorna o valor absoluto do número especificado.

Exemplos:

ABS(-7) = 7

ABS([Budget Variance])

Retorna o valor absoluto para todos os números contidos no campo Variação de orçamento.
ACOS(number)Retorna o arco cosseno do número especificado. O resultado é em radianos.

Exemplo:

ACOS(-1) = 3.14159265358979

ASIN(number)Retorna o arco seno de um número especificado. O resultado é em radianos.

Exemplo:

ASIN(1) = 1.5707963267949

ATAN(number)Retorna o arco tangente de um número especificado. O resultado é em radianos.

Exemplo:

ATAN(180) = 1.5652408283942

ATAN2(y number, x number)Retorna o arco tangente de dois números especificados (x e y). O resultado é em radianos.

Exemplo:

ATAN2(2, 1) = 1.10714871779409

CEILING(number)Arredonda um número para o inteiro mais próximo de valor maior ou igual.

Exemplo:

CEILING(3.1415) = 4

COS(number)Retorna o cosseno de um ângulo. Especifica o ângulo em radianos.

Exemplo:

COS(PI( ) /4) = 0.707106781186548

COT(angle)Retorna a cotangente de um ângulo. Especifica o ângulo em radianos.

Exemplo:

COT(PI( ) /4) = 1

DIV(integer1, integer2)Retorna a parte inteira de uma operação de divisão, na qual o integer1 é dividido pelo integer2.

Exemplo:

DIV(11,2) = 5

EXP(number)Retorna e elevado à potência do número especificado.

Exemplos:

EXP(2) = 7.389 EXP(-[Growth Rate]*[Time])

FLOOR(number)Arredonda um número para o inteiro mais próximo de valor menor ou igual.

Exemplo:

FLOOR(3.1415) = 3

HEXBINX(number, number)Mapeia as coordenadas x, y com a coordenada x do compartimento hexagonal mais próximo. Os compartimentos têm extensão 1, então as entradas podem precisar ser escalonadas corretamente.

Exemplo:

HEXBINX([Longitude], [Latitude])

HEXBINY(number, number)Mapeia as coordenadas x, y com a coordenada y do compartimento hexagonal mais próximo. Os compartimentos têm extensão 1, então as entradas podem precisar ser escalonadas corretamente.

Exemplo:

HEXBINY([Longitude], [Latitude])

LN(number)

Retorna o algoritmo natural de um número. Retorna Null se o número for menor que ou igual a 0.

Exemplo:

LN(EXP(5)) = 5

LOG(number [, base])

Retorna o algoritmo de um número para a base especificada. Se o valor de base for omitido, a base 10 será usada.

Exemplo:

LOG(256, 2) = 8

MAX(number, number)Retorna o máximo de dois argumentos, que devem ser do mesmo tipo. Retorna Null se algum argumento for Null. MAX também pode ser aplicada a um único campo em um cálculo agregado.

Exemplos:

MAX(4,7)
MAX(Sales,Profit)
MAX([First Name],[Last Name])

MIN(number, number)Retorna o mínimo de dois argumentos, que devem ser do mesmo tipo. Retorna Null se algum argumento for Null. MIN também pode ser aplicada a um único campo em um cálculo agregado.

Exemplos:

MIN(4,7)

MIN(Sales,Profit)

MIN([First Name],[Last Name])

PI( )

Retorna o pi da constante numérica: 3.14159.

Exemplo:

PI() = 3.14159265358979

POWER(number, power)Eleva o número à potência especificada.

Exemplos:

POWER(5,2) = 52 = 25 POWER(Temperature, 2)

Também é possível usar o símbolo ^:

5^2 = POWER(5,2) = 25

RADIANS(number)Converte o número especificado de graus em radianos.

Exemplo:

RADIANS(180) = 3.14159

ROUND(number, [decimals])Arredonda os números para um número de dígitos especificado. O argumento de decimais especifica quantos pontos decimais de precisão são necessários incluir no resultado final. Se os decimais forem omitidos, o número será arredondado para o inteiro mais próximo.

Exemplo:

Este exemplo arredonda cada valor de Vendas para um número inteiro:

ROUND(Sales)

SIGN(number)Retorna o sinal de um número: os valores de retorno possíveis são: -1 se o número for negativo, 0 se o número for zero ou 1 se o número for positivo.

Exemplo:

Se a média do campo de lucro for negativa,

SIGN(AVG(Profit)) = -1

SIN(number)Retorna o seno de um ângulo. Especifica o ângulo em radianos.

Exemplos:

SIN(0) = 1.0

SIN(PI( )/4) = 0.707106781186548

SQRT(number)Retorna a raiz quadrada de um número.

Exemplo:

SQRT(25) = 5

SQUARE(number)Retorna o quadrado de um número.

Exemplo:

SQUARE(5) = 25

TAN(number)

Retorna a tangente de um ângulo. Especifica o ângulo em radianos.

Exemplo:

TAN(PI ( )/4) = 1.0

ZN(expression)

Retorna a expressão se não for nulo, caso contrário, retorna zero. Use essa função para utilizar valores de zero, em vez de valores nulos.

Exemplo:

ZN([Profit]) = [Profit]

Funções de cadeia de caracteres

SintaxeDescrição
ASCII(string)Retorna o código ASCII do primeiro caractere de uma cadeia de caracteres.

Exemplo:

ASCII('A') = 65

CHAR(number)Retorna o caractere codificado pelo número de código ASCII.

Exemplo:

CHAR(65) = 'A'

CONTAINS(string, substring)Retornará true se a cadeia de caracteres determinada contiver a subcadeia de caracteres especificada.

Exemplo:

CONTAINS(“Calculation”, “alcu”) = true

ENDSWITH(string, substring)Retornará true se a cadeia de caracteres determinada terminar com a substring especificada. Espaços em branco à direita são ignorados.

Exemplo:

ENDSWITH(“Tableau”, “leau”) = true

FIND(string, substring, [start])Retorna a posição de índice de uma substring em uma cadeia de caracteres, ou 0 se a subcadeia de caracteres não for encontrada. Se o argumento de iniciar opcional for adicionado, a função ignora quaisquer instâncias de substring que aparecem antes do início da posição do índice. O primeiro caractere na cadeia de caracteres está na posição 1.

Exemplos:

FIND("Calculation", "alcu") = 2

FINDNTH(string, substring, occurrence)Retorna a posição da nª ocorrência de substring dentro da string especificada, onde n é definido pelo argumento de ocorrência

Exemplo:

FINDNTH("Calculation", "a", 2) =7

ISDATE(string)

Retornará true se uma determinada cadeia de caracteres for uma data válida.

Exemplo:

ISDATE("2004-04-15") = True

LEFT(string, number)Retorna o número de caracteres na extremidade esquerda na cadeia de caracteres.

Exemplo:

LEFT("Matador", 4) = "Mata"

LEN(string)Retorna o comprimento da cadeia de caracteres.

Exemplo:

LEN("Matador") = 7

LOWER(string)Retorna cadeia de caracteres, com todos os caracteres maiúsculos.

Exemplo:

LOWER("ProductVersion") = "productversion"

LTRIM(string)Retorna a cadeia de caracteres com os espaços à esquerda removidos.

Exemplo:

Example: LTRIM(" Sales") = "Sales"

(MID(string, start, [length])Retorna a cadeia de caracteres que começa no início da posição de índice. O primeiro caractere na cadeia de caracteres está na posição 1. Se o comprimento de argumento opcional for adicionado, a cadeia de caracteres retornada incluirá apenas esse número de caracteres.

Exemplos:

MID("Calculation", 2) = "alculation"

MID("Calculation", 2, 5) ="alcul"

PROPER(string)Converte uma cadeia de caracteres de texto para que a primeira letra de cada palavra seja maiúscula e as letras restantes fiquem em minúsculas. Espaços e caracteres não alfanuméricos, como pontuação, também atuam como separadores.

Exemplo:

PROPER("PRODUCT name") = "Product Name"

REGEXP_EXTRACT(string, pattern)Retorna uma subcadeia de caracteres da cadeia de caracteres fornecida que corresponde ao grupo de captura dentro do padrão de expressão regular. O padrão de expressão regular requer exatamente um grupo de captura

Exemplo:

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

REGEXP_EXTRACT_NTH(string, pattern, index)Retorna uma subcadeia de caracteres da cadeia de caracteres fornecida usando o padrão de expressão regular. A subcadeia é comparada com o grupo de captura nth, onde n é o índice dado.

Exemplo:

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

REGEXP_MATCH(string, pattern)Retorna true se uma subcadeia de caracteres de uma cadeia de caracteres fornecida corresponder ao padrão de expressão regular.

Exemplo:

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

REGEXP_REPLACE(string, pattern, replacement)Retorna uma cópia da cadeia de caracteres fornecida onde o padrão correspondente é substituído pela cadeia de caracteres de substituição.

Exemplo:

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

REPLACE(string, substring, replacement)Procura uma cadeia de caracteres para uma subcadeia de caracteres e substitui. Se a subcadeia de caracteres não for encontrada, a string não será alterada.

Exemplo:

REPLACE("Calculation", "ion", "ed") = "Calculated"

RIGHT(string, number)Retorna o número de caracteres na extremidade direita na cadeia de caracteres.

Exemplo:

RIGHT("Calculation", 4) = "tion"

RTRIM(string)Retorna cadeia de caracteres com os espaços à direita removidos.

Exemplo:

Example: RTRIM("Market ") = "Market"

SPACE(number)Retorna uma cadeia de caracteres composta por um número especificado de espaços repetidos.

Exemplo:

SPACE(1) = " "

SPLIT(string, delimiter, token number)

Retorna uma subcadeia de caracteres de uma cadeia de caracteres, conforme determinado por um delimitador que extrai os caracteres do início ou do fim da cadeia de caracteres.

Exemplo:

SPLIT('a-b-c-d', '-', 2) = 'b'

STARTSWITH(string, substring)Retorna true se a cadeia de caracteres começa com substring. Espaços em branco à esquerda são ignorados.

Exemplo:

STARTSWITH(“Joker”, “Jo”) = true

TRIM(string)Retorna a cadeia de caracteres com os espaços à esquerda e à direita removidos.

Exemplo:

TRIM(" Calculation ") = "Calculation"

UPPER(string)Retorna string, com todos os caracteres maiúsculos.

Exemplo:

UPPER("Calculation") = "CALCULATION"

Funções de agregação

SintaxeDescrição
AVG(expression)Retorna a média de todos os valores na expressão. AVG pode ser usada com campos numéricos apenas. Os valores nulos são ignorados

Exemplo;

AVG([Profit])

COUNT(expression)Retorna o número de itens em um grupo. Os valores Null não são contados.

Exemplo:

COUNT([Customer ID])

COUNTD(expression)Retorna o número de itens distintos em um grupo. Os valores NULL não são contados. Cada valor exclusivo é contado apenas uma vez.

Exemplo:

COUNTD([Region])

MEDIAN(expression)Retorna a mediana de uma única expressão. MEDIAN pode ser usada com campos numéricos apenas. Os valores nulos são ignorados.

Exemplo:

MEDIAN([Profit])

PERCENTILE(expression, number)Cálculo agregado que retorna o valor percentil da expressão fornecida correspondente ao número especificado. Os valores válidos para o número são de 0 a 1. PERCENTILE([expression], 0,50) sempre retornará o valor mediano na expressão.

Exemplo:

PERCENTILE([Sales], 0.90)

STDEV(expression)Retorna o desvio padrão de exemplo da expressão.

Exemplo:

STDEV([Profit])

STDEVP(expression)

Retorna o desvio padrão de exemplo da expressão na janela.

Exemplo:

STDEVP([Profit])

SUM(expression)

Retorna a soma de todos os valores na expressão. SUM pode ser usada com campos numéricos apenas. Os valores nulos são ignorados.

Exemplo:

SUM([Profit])

VAR(expression)

Retorna a variação estatística de todos os valores na expressão atribuída com base em uma amostra da população.

Exemplo:

VAR([Profit])

VARP(expression)

Retorna a variação estatística de todos os valores na expressão atribuída com base em uma amostra da população.

Exemplo:

VARP([Profit])

ZN(expression)

Retorna a expressão se não for nulo, caso contrário, retorna zero. Use essa função para utilizar valores de zero, em vez de valores nulos.

Exemplo:

ZN([Profit]) = [Profit]

Funções de conversão de tipo

SintaxeDescrição
DATERetorna uma data de acordo com um número, cadeia de caracteres ou expressão de data.

Exemplo:

DATE("2006-06-15 14:52") = 2006-06-15

Observe que as aspas são obrigatórias.

DATETIME(expression)Retorna uma datetime de acordo com um número, cadeia de caracteres ou expressão de data.

Exemplo:

DATETIME("April 15, 2004 07:59:00")

Observe que as aspas são obrigatórias.

FLOAT(expression)Retorna um flutuante dada uma expressão de qualquer tipo. Essa função requer números não formatados, o que significa excluir vírgulas e outros símbolos.

Exemplo:

FLOAT("3")= 3.000

INT(expression)Retorna um número inteiro dada uma expressão. Essa função trunca os resultados para o inteiro mais próximo de zero.

Exemplo:

INT(8.0/3.0) = 2 or INT(-9.7) = -9

MAKEDATE(year, month, day)Retorna um valor de data composto por um ano mês e um dia do mês.

Exemplo:

MAKEDATE(2014, 3, 18)

MAKEDATETIME(date, time)

Retorna um valor de data e hora de acordo com uma expressão de data e uma expressão de hora.

Exemplo:

MAKEDATETIME(#2012-11-12#, #07:59:00#)

MAKETIME(hour, minute, second)

Retorna um valor de hora composto por minutos e segundos.

Exemplo:

MAKETIME(14, 52, 40)

STR(expression)

Retorna uma cadeia de caracteres dada uma expressão.

Exemplo:

STR([Age])

Retorna todos os valores da medida Idade como cadeia de caracteres.

Funções de data

SintaxeDescrição
DATEADD(date_part, interval, date)Adiciona um incremento à data especificada e retorna a nova data. O incremento é definido pelo intervalo e pela data_parte.

Exemplo:

DATEADD('month', 3, #2004-04-15#) = 2004-07-15 12:00:00 AM

DATEDIFF(date_part, start_date, end_date, [start_of_week])

Retorna a diferença entre duas datas onde data_inicial é subtraída de data_final. A diferença é expressa em unidades de date_part. Se start_of_week for omitido, o dia de início da semana será determinado pelo dia de início configurado para a origem de dados.

Exemplo:

DATEDIFF('month', #2004-07-15#, #2004-04-03#, 'sunday') = -3

DATENAME(date_part, date, [start_of_week])Retorna uma parte da data fornecida como uma cadeia de caracteres, onde a parte é definida por date_part. Se start_of_week for omitido, o dia de início da semana será determinado pelo dia de início configurado para a origem de dados.

Exemplo:

DATENAME('month', #2004-04-15#) = "April"

DATEPARSE(format, string)Converte uma cadeia de caracteres em uma data no formato especificado.

Exemplo:

DATEPARSE ("dd.MMMM.yyyy", "15.April.2004") = 2004-04-15 12:00:00 AM

DATEPARTT(date_part, date, [start_of_week])Retorna uma parte da data fornecida como um inteiro onde a parte é definida por date_part. Se start_of_week for omitido, o dia de início da semana será determinado pelo dia de início configurado para a origem de dados.

Exemplo:

DATEPART('month', #2004-04-15#) = 4

DATETRUNC(date_part, date, [start_of_week])Trunca a data especificada na precisão definida por date_part e retorna a nova data. Se start_of_week for omitido, o dia de início da semana será determinado pelo dia de início configurado para a origem de dados.

Exemplo:

DATETRUNC('quarter', #2004-08-15#) = 2004-07-01 12:00:00 AM

DAY(date)Retorna o dia da data especificada como um inteiro.

Exemplo:

DAY(#2004-04-12#) = 12

ISDATE(string)Retornará true se uma determinada cadeia de caracteres for uma data válida.

Exemplo:

ISDATE("2004-04-15") = True

MONTH(date)

Retorna o mês da data especificada como um inteiro.

Exemplo:

MONTH(#2004-04-12#) = 4

NOW()Retorna a data e a hora atuais.

Exemplo:

NOW() = 2004-05-12 1:08:21 PM

TODAY()Retorna a data atual.

Exemplo:

TODAY() = 2004-05-12

YEAR(date)Retorna o ano da data especificada como um inteiro.

Exemplo:

YEAR(#2004-04-12#) = 2004

Funções lógicas

SintaxeDescrição
IFNULL(expr1, expr2)Retorna <expr1> se for não nulo, caso contrário, retorna <expr2>.

Exemplo:

IFNULL([Profit], 0)

IIF(test, then, else, [unknown])Verifica se uma condição é atendida e retorna um valor se VERDADEIRA, outro valor se FALSA e um terceiro valor opcional ou NULO se desconhecida.

Exemplo:

IIF([Profit] > 0, 'Profit', 'Loss')

ISDATE(string)Retornará true se uma determinada cadeia de caracteres for uma data válida.

Exemplo:

ISDATE("2004-04-15") = True

ISNULL(expression)Retorna true se a expressão não contiver dados válidos (Null).

Exemplo:

ISNULL([Profit])

ZN(expression)

Retorna a expressão se não for nulo, caso contrário, retorna zero. Use essa função para utilizar valores de zero, em vez de valores nulos.

Exemplo:

ZN([Profit]) = [Profit]

Funções analíticas

SintaxeDescrição
LAST_VALUE(expression, [return_last_non-null_value])Retorna o último valor da expressão especificada a partir da primeira linha na partição para a linha atual. Aceita um segundo parâmetro booliano opcional para retornar o último valor não nulo.

Exemplo:

{ ORDERBY [Row ID] ASC: LAST_VALUE([Category], true) } = returns the last non-null value of [Category]

LOOKUP(expression, [offset])Retorna o valor da expressão especificada em uma linha de destino, especificada como uma compensação relativa da linha atual. Retornará NULL se a linha de destino não puder ser determinada.

Exemplo:

{ORDERBY [DATE] ASC : LOOKUP([SALES], -1)}

Retorna o valor SALES da linha anterior.

NTILE(number)Distribui linhas em uma partição selecionada em um número especificado de grupos ou blocos. Com esta função o conjunto de valores (6,9,9,14) distribuídos por 3 peças seria atribuído às peças (1,2,2,3) em ordem crescente.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: NTILE(3) }}

RANK()Retorna a posição na classificação da concorrência padrão para a linha atual da partição. Valores idênticos são colocados em uma posição na classificação idêntica.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK() }}

RANK_DENSE()Retorna a posição na classificação densa para a linha atual na partição. Para valores idênticos, são atribuídos uma mesma posição na classificação, mas nenhuma lacuna é inserida na sequência numérica.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_DENSE() }}

RANK_MODIFIED()Retorna a posição na classificação da concorrência modificada para a linha atual na partição. Valores idênticos são colocados em uma posição na classificação idêntica.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_MODIFIED() }}

RANK_PERCENTILE()Retorna a posição na classificação percentil para a linha atual na partição.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_PERCENTILE() }}

ROW_NUMBER()Retorna uma ID de linha sequencial exclusivo para cada linha.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: ROW_NUMBER() }}

RUNNING_AVG(expression)Retorna a média em execução da expressão especificada a partir da primeira linha na partição para a linha atual.

Exemplo:

{ PARTITION [Category] : { ORDERBY [Row ID] ASC : RUNNING_AVG([Sales]) } } = running average of Sales, per Category.

RUNNING_SUM(expression)Retorna a soma em execução da expressão especificada a partir da primeira linha na partição para a linha atual.

Exemplo:

{ ORDERBY [Row ID] ASC : RUNNING_SUM([Sales]) } = running sum of all Sales

Palavras-chave

FunçãoDescrição
ANDExecuta uma conjunção lógica em duas expressões

Exemplo:

IF (ATTR([Market]) = "New Business" AND SUM([Sales]) > [Emerging Threshold] )THEN "Well Performing"

ASCDefine a ordem crescente para operações ORDERBY .

Exemplo

{ORDERBY [Sales] ASC:RANK()}

CASEEncontra o primeiro <value> que corresponde <expr> e retorna ao <return> correspondente.

Exemplo:

CASE [RomanNumeral] WHEN "|" THEN 1 WHEN "II" THEN 2 ELSE 3 END

DESCDefine a ordem decrescente para operações ORDERBY .

Exemplo:

{ORDERBY [Sales] DESC:RANK()}

ELSETesta uma série de expressões retornando o valor <then> para o primeiro <expr> true.

Exemplo:

IF [Profit] > 0 THEN 'Profitable' ELSE 'Loss' END

ELSEIFTesta uma série de expressões retornando o valor <then> para o primeiro <expr> true. Equivale a colocar uma instrução if dentro de uma operação ELSE.

Exemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

ENDEncerra uma operação introduzida pela diretiva correspondente.

Exemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

{ FIXED }As expressões de nível de detalhe FIXED calculam valores usando as dimensões especificadas sem referência ao nível de detalhe da visualização.

Exemplo:

{FIXED[Customer ID]:MIN([Order Date])}

IFCriar declaração condicional (instruções IF) e permite que você execute somente se uma condição for True.

Exemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

NOTExecuta uma negação lógica em uma expressão.

Exemplo:

IF NOT [Profit] > 0 THEN "Unprofitable" END

ORExecuta uma disjunção lógica em uma expressão.

Exemplo:

IF [Profit] < 0 OR [Profit] = 0 THEN "Needs Improvement" END

{ ORDERBY }Define a ordem de aplicação das funções analíticas. Use o argumento asc | desc opcional para especificar a ordem crescente ou decrescente para cada campo.

Exemplo:

{ORDERBY [Customer Name] ASC, [Sales] DESC: RANK() }

{ PARTITION }Define o grupo para funções analíticas. ORDERBY deve estar dentro da partição.

Exemplo:

{PARTITION [Customer]: {ORDERBY [Sales]: RANK()}}

THENTesta uma série de expressões retornando o valor <then> para o primeiro <expr> true.

Exemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Break even' ELSE 'unprofitable' END

WHENEncontra o primeiro <value> que corresponde expr> e retorna ao <return> correspondente.

Exemplo:

CASE [RomanNumberal] WHEN 'I' THEN 1 WHEN 'II' THEN 2 ELSE 3 END

Agradecemos seu feedback!Seu feedback foi enviado. Obrigado!