Sobes.tech
Senior

-- # -- Los especialistas en marketing lanzan campañas promocionales en la aplicación del servicio. Hay dos tablas: -- # -- campaigns - lista de campañas -- # -- - campaign - nombre de la campaña -- # -- - action_type - tipo de campaña: "push" o "banner" -- # -- communications - registro del backend con los envíos de comunicaciones de estas campañas a los usuarios -- # -- - user_id - identificador del usuario -- # -- - campaign - nombre de la campaña -- # -- - status - estado del evento: "success" o "error" -- ------------------------------------------------------------------------------------------------------------------------ -- # -- 1. Inicialmente, en la tabla campaigns hay 4 filas: -- # -- | campaign | action_type | -- # -- |-------------|-------------| -- # -- | promo_dogs | push | -- # -- | promo_cats | banner | <- duplicado aleatorio -- # -- | promo_cats | banner | <- dos filas -- # -- | promo_rats | push | # # -- Además, se sabe que: -- # -- las campañas promo_dogs y promo_cats se realizaron con éxito en 100 usuarios, y cada usuario recibió una comunicación, -- # -- mientras que promo_rats solo está en planificación. -- # -- 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 -- # -- 1.2 ¿Cómo cambiará la respuesta si se reemplaza el tipo de JOIN por LEFT? -- # -- 1.3 Indique el orden de ejecución de los operadores en esta consulta. -- Respuesta: promo_dogs ... ...