Notificação

Este artigo é sobre o Looker Studio. Acesse a documentação do Looker em https://cloud.google.com/looker/docs/intro.

CASE

Avalia uma lista de condições e retorna a primeira expressão de resultado correspondente.

CASE define uma ou mais condições e retorna um resultado quando uma condição é atendida. Defina um resultado padrão se nenhuma das condições for atendida.

Neste artigo:

Exemplo

CASE é normalmente usada para criar novas categorias ou agrupamentos de dados. Por exemplo, para agrupar valores de países selecionados na dimensão Região de vendas, você pode criar uma expressão CASE como esta:

CASE 
    WHEN Country IN ("USA","Canada","Mexico") THEN "North America" 
    WHEN Country IN ("England","France") THEN "Europe" 
    ELSE "Other" 
END

Como a expressão CASE pesquisada funciona

Uma expressão CASE começa com a palavra-chave CASE e termina com END. Entre elas, há uma série de seções ou cláusulas:

  • WHEN: uma condição que você quer avaliar. É possível ter várias cláusulas WHEN em uma única expressão CASE.
  • THEN: o resultado que vai ser retornado se a condição da cláusula WHEN for verdadeira. É preciso ter uma cláusula THEN para cada WHEN na sua expressão CASE.
  • ELSE: opcional. Se nenhuma das condições da cláusula WHEN for verdadeira, CASE vai retornar o valor na cláusula ELSE. Ou, então, se ELSE não for especificado, NULL será retornado.

CASE avalia cada cláusula WHEN sucessiva e retorna o primeiro resultado quando a condição é verdadeira. As cláusulas WHEN restantes e o resultado ELSE não são avaliados. Se todas as condições WHEN forem falsas ou NULL, CASE vai retornar o resultado ELSE. Caso não haja uma cláusula ELSE, vai ser retornado NULL.

Sintaxe da CASE pesquisada


CASE
    WHEN condition THEN result
    [WHEN condition THEN result]
    [...]
    [ELSE else_result]
END

Parâmetros

WHEN condition

As condições WHEN avaliam seus dados e retornam "true" se a condição especificada é atendida e "false" quando não é. Você pode usar qualquer expressão booleana válida como condição WHEN.

Resultado THEN

Cada condição WHEN precisa ter uma cláusula THEN correspondente que especifica os resultados se essa condição é verdadeira. Se houver várias condições WHEN, a expressão CASE vai retornar o resultado para a primeira que for verdadeira.

Observações

Todos os resultados possíveis em uma cláusula THEN precisam ser do mesmo tipo.

Por exemplo, se a primeira cláusula THEN retornar um texto, as demais cláusulas THEN e a cláusula ELSE também vão precisar retornar um texto.

ELSE else_result

A cláusula opcional ELSE especifica um resultado padrão, que será retornada se nenhuma das cláusulas WHEN for verdadeira. Caso uma expressão CASE não tenha uma cláusula ELSE e nenhuma das cláusulas WHEN seja verdadeira, a instrução vai retornar NULL.

Só pode haver uma cláusula ELSE em uma expressão CASE.

Mais exemplos

Verificar a desigualdade

CASE WHEN Medium != "cpc" THEN "free" ELSE "paid" END
Em situações simples, use a função IF.

Classificar os valores de dimensão numérica em intervalos discretos

Por exemplo, você pode separar os pedidos em "Pequeno", "Médio" ou "Grande" com base no valor:

CASE
    WHEN Amount < 20 THEN "Small"
    WHEN Amount >= 20 and Amount < 100 THEN "Medium"
    WHEN Amount >= 100 THEN "Large"
END
Também é possível usar um campo calculado Grupo se quiser criar grupos ad hoc para valores de dimensão.

Avaliar uma condição AND lógica

CASE 
    WHEN Country ISO Code = "US" AND Medium = "cpc" 
    THEN "US - Paid" 
    ELSE "other" 
END

Avaliar uma condição lógica AND/OR

CASE 
    WHEN REGEXP_MATCH(Video Title, ".*Google Analytics*")
    AND is_livestream = TRUE 
    OR Video Length > 600 
    THEN "GA Livestream or long video" 
END

Avaliar um parâmetro

Por exemplo, você pode definir um parâmetro de "Sales target" e ajustá-lo para saber quais pedidos atenderam à meta:

CASE WHEN Qty Sold >= Sales target parameter THEN 1 ELSE 0 END


Retornar um campo ou valor diferente dependendo de um valor de parâmetro

O primeiro exemplo retorna uma dimensão com base no valor do parâmetro selecionado. Você pode usar essa técnica para permitir que os usuários mudem a dimensão de detalhamento usada por um gráfico.

O segundo exemplo mostra como retornar uma métrica diferente com base em um valor de parâmetro.

CASE 
    WHEN Breakdown = "Product Category" THEN Product Category 
    WHEN Breakdown = "Store" THEN Store 
END


## Observação: você também pode escrever isso usando a sintaxe CASE simples:

CASE Breakdown 
    WHEN "Product Category" THEN Product Category
    WHEN "Store" THEN Store
END

CASE WHEN Show Adjusted Cost = TRUE THEN Cost + Adjustments ELSE Cost END

Instruções CASE aninhadas

É possível aninhar instruções CASE para criar uma lógica de ramificação mais complexa:

CASE WHEN REGEXP_CONTAINS(SKU, "Hats") THEN
CASE WHEN Color = "blue"
        THEN "BLUE HAT"
        ELSE "JUST A HAT"
   END 
ELSE 
  "NOT A HAT"
END

Isso foi útil?

Como podemos melhorá-lo?
true
Novidades do Looker Studio

Saiba mais sobre novos recursos e mudanças recentes. Notas da versão do Looker Studio disponíveis no Google Cloud.

Pesquisa
Limpar pesquisa
Fechar pesquisa
Menu principal
10578610521156174355
true
Pesquisar na Central de Ajuda
true
true
true
true
true
102097
false
false