-- Маркетологдор сервистин колдонмосунда промо-кампанияларды ишке киргизүүдө. Ике таблица бар:
-- 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 AS campaign
-- 1.2 Эгер JOIN түрү LEFT кылынса, жооп кандай өзгөрөт?