Ir para o conteúdo principal
Workday User Guide
Última atualização: 2023-06-23
CASO

CASO

Descrição

CASE
é uma função de linha que avalia cada linha do conjunto de dados de acordo com uma ou mais condições de entrada e gera o resultado especificado quando as condições de entrada são atendidas.

Sintaxe

CASE
WHEN
input_condition
[
AND
|
OR
input_condition
]
THEN
output_expression
[...] [
ELSE
other_output_expression
]
END

Valor de retorno

Retorna um valor por linha do mesmo tipo da expressão de saída. Todas as expressões de saída devem retornar o mesmo tipo de campo.
Se houver várias expressões de saída que retornam tipos de campo diferentes, você precisará incluir todos os dados de saída.
CASE
em uma das funções de conversão de tipo de campo, como
TO_INT
, para converter explicitamente todos os valores de saída em um tipo de campo específico.

Parâmetros de entrada

WHEN
input_condition
É obrigatório. O
WHEN
A palavra-chave é usada para especificar uma ou mais expressões boolianas (veja os operadores condicionais compatíveis). Se um valor de entrada atende à condição, a expressão de saída é aplicada. As condições de entrada podem incluir outras funções de linha em sua expressão, mas não podem conter funções de resumo ou expressões de medida. Você pode usar o botão
AND
ou
OR
palavras-chave para combinar várias condições de entrada.
THEN
output_expression
É obrigatório. O
THEN
A palavra-chave é usada para especificar uma expressão de saída quando as condições especificadas são atendidas. As expressões de saída podem incluir outras funções de linha, mas não podem conter funções de resumo ou expressões de medida.
ELSE
other_output_expression
Opcional. O
ELSE
A palavra-chave pode ser usada para especificar uma expressão de saída alternativa a ser usada quando as condições especificadas não são atendidas. Se for
ELSE
A expressão não foi fornecida,
ELSE NULL
é o valor por padrão.
FIM
É obrigatório. Indica o fim de
CASE
Processamento de funções

Exemplos

Converta valores na coluna
de idade
em agrupamentos com base em intervalos (binning):
CASE WHEN [age] <= 25 THEN "0-25" WHEN [age] <= 50 THEN "26-50" ELSE "over 50" END
Transforme os valores na coluna
Sexo
de uma cadeia de caracteres em outra:
CASE WHEN [gender] = "M" THEN "Male" WHEN [gender] = "F" THEN "Female" ELSE "Unknown" END
A coluna
de veículo
contém os seguintes valores: caminhonete, onboarding, car, Scooter, perua, ciclovia, triciclo e mota. O exemplo a seguir converte vários valores da coluna
de veículo
em um único valor:
CASE WHEN [vehicle] in ("bike","scooter","motorcycle") THEN "two-wheelers" ELSE "other" END