Senior
11
-- # -- Маркетологи запускают в приложении сервиса промо-кампании. Есть две таблицы: -- # -- 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? -- # -- 1.3 Укажите порядок выполнения операторов в этом запросе. -- Ответ: promo_dogs ... ...
Компании, где спрашивали
Яндекс