Выбор ответа Senior SQL для продуктовых метрик обновлено

Дни без событий

Вопрос

Средний DAU за месяц считают как AVG(dau) по результату GROUP BY visit_date. В чём ошибка?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Дни без визитов выпадают, и средний DAU завышен. Группировка строится только по существующим датам.

Варианты ответа

  1. AVG нельзя применять к результату группировки
  2. Дни без визитов выпадают, и средний DAU завышенправильный ответ
  3. COUNT(DISTINCT) в подзапросе не работает
  4. Ошибки нет, так и считают средний DAU

Разбор

Группировка строится только по существующим датам. Если были дни с нулём активных, они выпадают из среднего. Нужен календарь через generate_series и LEFT JOIN. Остальные утверждения неверны.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.