Data Studio ahora se llama Looker Studio. Looker Studio sigue siendo una herramienta gratuita e incluye las mismas funciones que ya conoces. Looker Studio Pro ofrece una gestión mejorada de recursos empresariales, nuevas funciones de colaboración en equipo y acceso a asistencia técnica. Más información

CASE

Evalúa una lista de condiciones y devuelve el primer resultado que coincida con la expresión.

CASE define una o varias condiciones y devuelve un resultado cuando se cumple una de ellas. Puedes definir un resultado predeterminado si no se cumple ninguna de las condiciones.

Secciones de este artículo:

Ejemplo

Un uso habitual de la expresión CASE es crear categorías o agrupaciones de datos. Por ejemplo, puedes crear una expresión CASE como la que se indica a continuación para agrupar valores de países seleccionados en una dimensión denominada Región de ventas:

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

Cómo funciona la expresión CASE de búsqueda

Las expresiones CASE comienzan con la palabra clave CASE y terminan con la palabra clave END. Entre ambas palabras clave se incluyen varias secciones o "cláusulas":

  • WHEN: condición que quieres evaluar. Puedes incluir varias cláusulas WHEN en una sola expresión CASE.
  • THEN: el resultado que devuelve la expresión si se cumple la condición de la cláusula WHEN. La expresión CASE debe contener una cláusula THEN por cada cláusula WHEN.
  • ELSE: esta cláusula es opcional. Si no se cumple ninguna de las condiciones de las cláusulas WHEN, CASE devuelve el valor de la cláusula ELSE, o NULL si no se ha especificado ninguna.

CASE evalúa cada cláusula WHEN sucesiva y devuelve el primer resultado donde la condición es true. Las cláusulas WHEN restantes y el resultado ELSE no se evalúan. Si todas las condiciones WHEN son false o NULL, CASE devuelve el resultado ELSE o, si no hay ninguna cláusula ELSE, devuelve NULL.

Sintaxis de CASE de búsqueda


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

Parámetros

WHEN condition

Las condiciones WHEN evalúan los datos y devuelven el valor true si se cumple la condición especificada o, si no se cumple, el valor false. Puedes usar cualquier expresión booleana válida como condición WHEN.

THEN result

Las condiciones WHEN deben corresponderse con una cláusula THEN, que especifica los resultados si la condición se cumple. Si hay varias condiciones WHEN, la expresión CASE devuelve el resultado de la primera condición que se cumple.

Notas

Todos los posibles resultados de una instrucción THEN deben ser del mismo tipo.

Por ejemplo, si la primera cláusula THEN devuelve texto, las demás cláusulas THEN y la cláusula ELSE también deben devolver texto.

ELSE else_result

La cláusula opcional ELSE especifica un resultado predeterminado, que se devuelve si no se cumple ninguna cláusula WHEN. Si una expresión CASE no tiene ninguna cláusula ELSE y tampoco se cumple ninguna cláusula WHEN, la instrucción devuelve NULL. Las expresiones CASE solo pueden contener una cláusula ELSE.

Más ejemplos

Puedes comprobar la desigualdad:

CASE WHEN Medium != "cpc" THEN "free" ELSE "paid" END
Para situaciones sencillas de "if/then/else", te recomendamos que utilices la función IF.

Puedes clasificar los valores de dimensiones numéricas en segmentos independientes. Por ejemplo, puedes dividir los pedidos en pequeños, medianos o grandes en función de la cantidad de artículos que incluyan:

CASE
    WHEN Amount < 20 THEN "Small"
    WHEN Amount >= 20 and Amount < 100 THEN "Medium"
    WHEN Amount >= 100 THEN "Large"
END

 

Puedes evaluar una condición AND lógica:

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

 

Puedes evaluar una condición AND/OR lógica y usar una coincidencia de expresión regular:

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

 

Puedes evaluar un parámetro. Por ejemplo, puedes definir un parámetro "Sales Target" y ajustarlo para ver qué pedidos han cumplido el objetivo:

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

 

Puedes devolver un campo o valor diferente en función de un valor de parámetro.

En el primer ejemplo se devuelve una dimensión basada en el valor de parámetro seleccionado. Puedes utilizar esta técnica para permitir que los usuarios cambien la dimensión de desglose que usa un gráfico.

En el segundo ejemplo se muestra cómo devolver una métrica diferente en función de un valor de parámetro.

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

Nota: También puedes escribirlo con la sintaxis de CASE simple:

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

¿Te ha resultado útil esta información?
¿Cómo podemos mejorar esta página?
true
Búsqueda
Borrar búsqueda
Cerrar búsqueda
Aplicaciones de Google
Menú principal
Buscar en el Centro de ayuda
false
false
true
true
102097
false
false