-- # -- 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ərilən kommunikasiya logu
-- # -- - 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 |
-- # -- | promo_cats | banner | <- təsadüfi çoxaldılmış
-- # -- | promo_cats | banner | <- iki sətir
-- # -- | promo_rats | push |
# # -- Bundan əlavə, bilinir 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,
-- # -- promo_rats isə yalnız planlaşdırılır.
-- # -- 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
-- # -- 1.2 Əgər JOIN növü LEFT ilə dəyişdirilsə, cavab necə dəyişər?
-- # -- 1.3 Bu sorğudakı operatorların icra ardıcıllığını göstərin.
-- Cavab:
promo_dogs ... ...