ComenzarEmpieza gratis

Calcular el porcentaje con CASE y AVG

Las sentencias CASE devolverán cualquier valor que especifiques en tu cláusula THEN. Esta es una herramienta increíblemente potente para realizar cálculos sólidos y manipular datos cuando se utiliza junto con una sentencia agregada. Una tarea clave que puedes realizar es utilizar CASE dentro de una función AVG para calcular un porcentaje de información en tu base de datos.

Aquí tienes un ejemplo de cómo configurarlo:

AVG(CASE WHEN condition_is_met THEN 1

         WHEN condition_is_not_met THEN 0 END)

Con este enfoque, es importante especificar exactamente qué registros cuentan como 0. ¡De lo contrario, tus cálculos pueden no ser correctos!

Tu tarea es examinar el número de victorias, derrotas y empates en cada país. La tabla matches está filtrada para incluir todos los partidos de las temporadas 2013/2014 y 2014/2015.

Este ejercicio forma parte del curso

Manipulación de datos en SQL

Ver curso

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

SELECT 
    c.name AS country,
    -- Count the home wins, away wins, and ties in each country
	___(___ ___ m.home_goal ___ m.away_goal THEN m.id 
        END) AS home_wins,
	___(___ ___ m.home_goal ___ m.away_goal THEN m.id 
        END) AS away_wins,
	___(___ ___ m.home_goal ___ m.away_goal THEN m.id 
        END) AS ties
FROM country AS c
LEFT JOIN matches AS m
ON c.id = m.country_id
GROUP BY country;
Editar y ejecutar código