-- Marketoloqlar servis tətbiqində promosyon kampaniyalarını başlatırlar. İki cədvəl mövcuddur:
-- campaigns – kampaniya siyahısı
-- - campaign – kampaniya adı
-- - action_type – kampaniya növü: "push" və ya "banner"
-- communications – bu kampaniyaların istifadəçilərə göndərilməsi ilə bağlı backend qeydiyyatı
-- - user_id – istifadəçi identifikatoru
-- - campaign – kampaniya adı
-- - status – hadisənin vəziyyəti: "success" və ya "error"
---------------------------------------------------------------------------
-- 1. Əvvəlcə, campaigns cədvəlində 4 sətir var:
-- | campaign | action_type |
-- |-------------|-------------|
-- | promo_dogs | push | <- təsadüfi çoxaldılmış
-- | promo_cats | banner |
-- | promo_cats | banner | <- iki sətir
-- | promo_rats | push |
-- Həmçinin məlumdur ki:
-- promo_dogs və promo_cats kampaniyaları 100 istifadəçi ilə uğurla həyata keçirilib və hər istifadəçi bir kommunikasiya alıb,
-- və promo_rats yalnız planlaşdırma mərhələsindədir.
-- 1.1 Sorğu nə göstərəcək:
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 növü LEFT-ə dəyişdirilərsə, cavab necə dəyişəcək?