Sobes.tech
Senior

-- 1.1 Co pokaże zapytanie: 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 zmieni się odpowiedź, jeśli zmienisz typ JOIN na LEFT? -- 1.3 Podaj kolejność wykonywania operatorów w tym zapytaniu. -- 2. Tabela campaigns została naprawiona: usunięto duplikaty, dodano klucz (PK). -- Przeprowadzono więcej kampanii, z powodu błędów użytkownicy zaczęli mieć nieudane próby dostarczenia komunikacji, a niektórym w ogóle się nie udało pokazać. -- Przykład 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 | -- Przykład 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 kampaniach promocyjnych wysłanych do użytkowników: -- 2.1 Napisz zapytanie, które wyświetla liczbę użytkowników, którzy pomyślnie otrzymali komunikację, dla każdej kampanii. -- 2.2 Zmień zapytanie, aby wyświetlić: liczbę użytkowników, którzy nie otrzymali żadnej pomyślnej komunikacji, dla każdej kampanii.