Sobes.tech
Senior

-- # -- Specialiștii în marketing lansează campanii promoționale în aplicația serviciului. Există două tabele: -- # -- campaigns - lista campaniilor -- # -- - campaign - numele campaniei -- # -- - action_type - tipul campaniei: "push" sau "banner" -- # -- communications - jurnalul backend cu trimiterile de comunicații ale acestor campanii către utilizatori -- # -- - user_id - identificatorul utilizatorului -- # -- - campaign - numele campaniei -- # -- - status - statutul evenimentului: "success" sau "error" -- ------------------------------------------------------------------------------------------------------------------------ -- # -- 1. Inițial, în tabelul campaigns există 4 rânduri: -- # -- | campaign | action_type | -- # -- |-------------|-------------| -- # -- | promo_dogs | push | -- # -- | promo_cats | banner | <- duplicat aleatoriu -- # -- | promo_cats | banner | <- două rânduri -- # -- | promo_rats | push | # # -- În plus, se știe că: -- # -- campaniile promo_dogs și promo_cats au fost efectuate cu succes pe 100 de utilizatori, iar fiecare utilizator a primit o comunicare, -- # -- în timp ce promo_rats este doar în planificare. -- # -- 1.1 Ce va afișa interogarea: 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 Cum se va schimba răspunsul dacă se schimbă tipul de JOIN în LEFT? -- # -- 1.3 Indicați ordinea de execuție a operatorilor în această interogare. -- Răspuns: promo_dogs ... ...