-- 1.1 Co zobrazí dotaz:
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 Jak se změní odpověď, pokud změníte typ JOIN na LEFT?
-- 1.3 Uveďte pořadí provádění operátorů v tomto dotazu.
-- 2. Tabulka campaigns byla opravena: odstraněny duplicity, přidán klíč (PK).
-- Bylo provedeno více kampaní, kvůli chybám začali uživatelé dostávat neúspěšné pokusy o doručení komunikací, a někteří se vůbec nezobrazili.
-- Příklad 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 |
-- Příklad 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 |
-- O kampaních, které byly poslány uživatelům:
-- 2.1 Napište dotaz, který ukazuje počet uživatelů, kteří úspěšně obdrželi komunikaci, pro každou kampaň.
-- 2.2 Upravte dotaz tak, aby ukazoval: počet uživatelů, kteří neobdrželi žádnou úspěšnou komunikaci, pro každou kampaň.