Отобрать примеры DeviceID из таблицы events (DeviceID — идентификатор устройства; AppPlatform — платформа приложения (iOS/ Android); events — количество просмотров всех товаров за этот день у этого DeviceID), которых нет в таблице installs (DeviceID — идентификатор устройства, на которое было установлено приложение; InstallationDate — дата установки; InstallCost — цена установки; Platform — платформа приложения (iOS/ Android); Source — источник установки)
Выведите 10 уникальных DeviceID, которые присутствуют в таблице events, но отсутствуют в installs, отсортировав их в порядке убывания.
Напишите SQL запрос
sql
SELECT DISTINCT e.DeviceID
FROM events AS e
LEFT JOIN installs AS i ON e.DeviceID = i.DeviceID
WHERE i.DeviceID IS NULL
ORDER BY e.DeviceID DESC
LIMIT 10;
Разберем этот запрос по шагам:
1. Мы используем оператор `SELECT` для выбора нужных нам данных из таблицы events. Мы выбираем столбец DeviceID.
2. Затем мы используем `LEFT JOIN`, чтобы объединить таблицы events и installs по столбцу DeviceID. Это позволяет нам отобрать только те записи из events, которых нет в installs.
3. В следующей строке мы используем предикат `WHERE` для фильтрации результатов. Мы выбираем только те записи, для которых DeviceID в таблице installs равен NULL. Это означает, что DeviceID не присутствует в installs.
4. Затем мы используем оператор `ORDER BY` для сортировки результатов в порядке убывания по столбцу DeviceID.
5. Наконец, мы используем оператор `LIMIT` для выбора только 10 уникальных записей.
Таким образом, данный SQL-запрос выберет 10 уникальных DeviceID, которые присутствуют в таблице events, но отсутствуют в installs, и отсортирует их в порядке убывания.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет