-- 1.1 ¿Qué mostrará la consulta:
SELECT campaign, COUNT(*) as rows, COUNT(DISTINCT co.user_id) AS users
FROM campaigns AS ca
INNER JOIN communications AS co
ON ca.campaign = co.campaign
GROUP BY ca.campaign AS campaign
-- 1.2 ¿Cómo cambiará la respuesta si se cambia el tipo de JOIN a LEFT?
-- 1.3 Indique el orden de ejecución de los operadores en esta consulta.
-- 2. La tabla campaigns fue corregida: se eliminó la duplicación, se añadió la clave (PK).
-- Se realizaron más campañas, debido a errores, los usuarios comenzaron a tener intentos fallidos de entrega de comunicaciones, y algunos ni siquiera lograron mostrar.
-- Ejemplo 1: communications
-- | user_id | campaign | status |
-- | 1000001 | promo_cats | error |
-- | 1000001 | promo_cats | error |
-- | 1000001 | promo_cats | success|
-- | 1000001 | promo_cats | success|
-- | 1000001 | promo_cats | error |
-- Ejemplo 2: communications
-- | user_id | campaign | status |
-- | 1000002 | promo_rats | error |
-- | 1000002 | promo_rats | error |
-- | 1000002 | promo_rats | error |
-- | 1000002 | promo_rats | error |
-- | 1000002 | promo_rats | error |
-- Sobre las campañas promocionales enviadas a los usuarios:
-- 2.1 Escriba una consulta que muestre la cantidad de usuarios que recibieron con éxito la comunicación, para cada campaña.
-- 2.2 Modifique la consulta para mostrar: la cantidad de usuarios que no recibieron ninguna comunicación exitosa en total, para cada campaña.