-- Маркетиншки стручњаци покрећу промоције кампања у апликацији сервиса. Постоје две табеле:
-- campaigns – листа кампања
-- - campaign – назив кампање
-- - action_type – тип кампање: "push" или "banner"
-- communications – лог бекенда са слањем комуникација ових кампања корисницима
-- - user_id – идентификатор корисника
-- - campaign – назив кампање
-- - status – статус догађаја: "success" или "error"
---------------------------------------------------------------------------
-- 1. Изначално, у табели campaigns постоје 4 реда:
-- | campaign | action_type |
-- |-------------|-------------|
-- | promo_dogs | push | <- случајно дуплирано
-- | promo_cats | banner |
-- | promo_cats | banner | <- два реда
-- | promo_rats | push |
-- Такође је познато да:
-- кампање promo_dogs и promo_cats су успешно спроведене на 100 корисника и сваки корисник је добио по једну комуникацију,
-- а promo_rats је тек у фази планирања.
-- 1.1 Шта ће приказати упит:
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 Како ће се променити одговор ако се промени тип JOIN на LEFT?