-- # -- Маркетологтар сервис қолданбасында промо-кампанияларды іске қосады. Екі кесте бар:
-- # -- 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 ... ...