CASE

La función CASE evalúa una expresión y devuelve un valor u otro en función del resultado obtenido.

Sintaxis

CASE <expresión>
WHEN <valor1> THEN <resultado1>
WHEN <valor2> THEN <resultado2>...
ELSE <resultado_por_defecto>
END

Parámetros
  • expresión: expresión a evaluar
  • valor1, valor2, etc.: valores con los que comparar el resultado de la expresión
  • resultado1, resultado2, etc.: resultados a devolver cuando el resultado de la expresión coincida con el valor correspondiente
  • resultado_por_defecto: valor por defecto a devolver si ninguno de los valores coincide con el resultado de la expresión
Valor devuelto

La función CASE devuelve un valor perteneciente a la lista de resultados o el resultado por defecto.

Ejemplos

Si en nuestro modelo de datos tenemos un campo Number of Children que contiene el número de hijos de nuestros clientes y queremos convertir sus valores en una cadena de texto que asocie al valor n el texto "n hijos", podríamos hacerlo con el siguiente campo calculado:

Número de hijos =

CASE [Number of Children]
WHEN 0 THEN "Sin hijos"
WHEN 1 THEN "Un hijo"
WHEN 2 THEN "Dos hijos"
ELSE "Más de dos hijos"
END

Ahora, si llevamos el campo Number of Children (como dimensión) y el campo calculado al estanto de filas, obtendríamos el siguiente resultado:

Función CASE

 

 

Categoría
Lógicas
Submitted by admin on Tue, 10/08/2019 - 20:01