2144574c
Дата публикации:

Помогите найти ошибку.

Помогите найти ошибку.

Ошибка в данном решении заключается в том, что в подзапросе используется функция count(*) over (), которая возвращает общее количество строк в таблице tools_shop.users, а не количество уникальных пользователей.

Для решения задачи можно использовать следующий запрос:

SELECT DATE_TRUNC('month', event_time::timestamp) AS month, COUNT(DISTINCT user_id) AS unique_users_count FROM tools_shop.events WHERE platform = 'android' AND DATE_TRUNC('month', event_time::timestamp) BETWEEN '2020-01-01' AND '2020-03-01' GROUP BY DATE_TRUNC('month', event_time::timestamp) ORDER BY DATE_TRUNC('month', event_time::timestamp), unique_users_count;

В этом запросе мы сначала группируем данные по месяцу события и считаем количество уникальных пользователей с помощью функции COUNT(DISTINCT user_id). Затем сортируем результаты по месяцу события и количеству уникальных пользователей.