Sobes.tech
Senior

-- # -- Маркетологтар сервис қолданбасында промо-кампанияларды іске қосады. Екі кесте бар: -- # -- 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 -- # -- 1.2 Егер JOIN түрін LEFT-ке өзгерту қалай өзгереді? -- # -- 1.3 Бұл сұрауда операторлардың орындалу тәртібі. -- Жауап: promo_dogs ... ...