Funções lógicas

Este artigo apresenta as funções lógicas e seus usos no Tableau. Ele também demonstra como criar um cálculo lógico com um exemplo.

Por que usar cálculos lógicos

Cálculos lógicos permitem determinar se uma certa condição é verdadeira ou falsa (lógica booleana). Por exemplo, se quiser ver rapidamente se as vendas em cada país para os quais você distribui sua mercadoria estiveram acima ou abaixo de um certo limite.

O cálculo lógico pode ficar mais ou menos assim:

SUM(Sales) > 1,000,000

Funções lógicas disponíveis no Tableau:

Função

Sintaxe

Descrição

IN <expr1> IN <expr2>

Retorna TRUE se algum valor <expr1> corresponder a qualquer valor em <expr2>.

Os valores <expr1> podem ser um Conjunto, lista de valores literais ou um campo combinado.

Exemplos:

SUM([Cost]) IN (1000, 15, 200)

[SET] IN [COMBINED FIELD]

AND

IF <expr1> AND <expr2> THEN <then> END

Realiza uma conjunção lógica em duas expressões.

Exemplo:

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

CASE CASE <expression> WHEN <value1> THEN <return1> WHEN <value2> THEN <return2> ... ELSE <default return> END

Realiza testes lógicos e retorna os valores apropriados. A função CASE avalia expression, compara com uma sequência de valores, value1, value2, etc., e retorna um resultado. Quando um valor correspondente a expression for encontrado, CASE retornará o valor de retorno correspondente. Se nenhuma correspondência for encontrada, a expressão de retorno padrão será usada. Se não houver retorno padrão e nenhuma correspondência de valor, Null será retornado.

CASE é geralmente mais fácil de usar do que IIF ou IF THEN ELSE.

Normalmente, você usa uma função IF para executar uma sequência de testes arbitrários e usa uma função CASE para procurar uma correspondência para uma expressão. Mas uma função CASE pode ser sempre reescrita como uma função IF, embora a função CASE seja geralmente mais concisa.

Muitas vezes, você pode usar um grupo para obter os mesmos resultados de uma função case complicada.

Exemplos:

CASE [Region] WHEN 'West' THEN 1 WHEN 'East' THEN 2 ELSE 3 END

CASE LEFT(DATENAME('weekday',[Order Date]),3) WHEN 'Sun' THEN 0 WHEN 'Mon' THEN 1 WHEN 'Tue' THEN 2 WHEN 'Wed' THEN 3 WHEN 'Thu' THEN 4 WHEN 'Fri' THEN 5 WHEN 'Sat' THEN 6 END

ELSE IF <expr> THEN <then> ELSE <else> END

Testa um série de expressões e retorna o valor <then> para a primeira <expr> verdadeira.

Exemplo:

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

ELSEIF IF <expr> THEN <then> [ELSEIF <expr2> THEN <then2>...] [ELSE <else>] END

Testa um série de expressões e retorna o valor <then> para a primeira <expr> verdadeira.

Exemplo:

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

END IF <expr> THEN <then> [ELSEIF <expr2> THEN <then2>...] [ELSE <else>] END

Testa um série de expressões e retorna o valor <then> para a primeira <expr> verdadeira. Deve ser colocada ao final de uma expressão.

Exemplo:

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

IF IF <expr> THEN <then> [ELSEIF <expr2> THEN <then2>...] [ELSE <else>] END

Testa um série de expressões e retorna o valor <then> para a primeira <expr> verdadeira.

Exemplo:

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

IFNULL IFNULL(expr1, expr2)

Retorna <expr1> se não for nulo, caso contrário, retorna <expr2>.

Exemplo:

IFNULL([Profit], 0)

IIF 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 ISDATE(string)

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

Exemplo:

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

ISNULL ISNULL(expression)

Retorna true se a expressão é NULL (não contém dados válidos).

Exemplo:

ISNULL([Profit])

MAX MAX(expression) ou Max(expr1, expr2)

Retorna o máximo de uma expressão única em todos os registros ou o máximo de duas expressões para cada registro.

Exemplo:

MAX([Sales])

MIN MIN(expression) ou MIN(expr1, expr2)

Retorna o mínimo de uma expressão em todos os registros ou o mínimo de duas expressões para cada registro.

Exemplo:

MIN([Profit])

NOT IF NOT <expr> THEN <then> END

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

Exemplo:

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

OU IF <expr1> OR <expr2> THEN <then> END

Realiza uma disjunção lógica em duas expressões.

Exemplo:

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

THEN IF <expre> THEN <then> [ELSEIF ,expr2> THEN <then2>...] [ELSE <else>] END

Testa um série de expressões e retorna o valor <then> para a primeira <expr> verdadeira.

Exemplo:

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

WHEN CASE <expr> WHEN <Value1> THEN <return1> ... [ELSE <else>] END

Encontra o primeiro <value> que corresponde a <expr> e retorna o <return> correspondente.

Exemplo:

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

ZN ZN(expression)

Retorna <expression> se não for nulo, caso contrário, retorna zero.

Exemplo:

ZN([Profit])


Criar um cálculo lógico

Siga as etapas abaixo para saber como criar um cálculo lógico.

  1. No Tableau Desktop, conecte-se à fonte de dados salva Sample - Superstore, incluída no Tableau.

  2. Navegue até uma planilha.

  3. No painel Dados, arraste Estado até a divisória Linhas.

  4. No painel Dados, arraste Categoria até a divisória Linhas e coloque-a à direita de Estado.

  5. No painel Dados, arraste Vendas até a divisória Colunas.

  6. Selecione Análise > Criar campo calculado.

  7. No editor de cálculo aberto, faça o seguinte:

    • Nomeie o campo calculado, KPI (indicador-chave de desempenho).

    • Insira a fórmula a seguir:

      SUM([Profit]) > 0

      Este cálculo verifica rapidamente se um membro é maior do que zero. Se for, ele retorna true, caso contrário, ele retorna false.

    • Ao terminar, clique em OK.

      O novo campo calculado aparece em Medidas no painel Dados. Assim como os outros campos, é possível usá-lo em uma ou mais visualizações.

  8. No painel Dados, arraste KPI até Color no cartão Marcas.

    Agora é possível visualizar quais categorias estão perdendo dinheiro em cada estado.

Consulte também

Visualizar indicadores-chave de progresso

Tutorial de vídeo gratuito sobre cálculos lógicos

Funções no Tableau

Funções do Tableau (por categoria)

Funções do Tableau (em ordem alfabética)

Agradecemos seu feedback!