Выбор ответа Middle Оконные функции обновлено

Скользящее среднее за 3 дня

Вопрос

Какое окно даёт скользящее среднее за текущий и два предыдущих дня (в таблице одна строка на день, пропусков нет)?

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

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

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

Коротко

Правильный ответ: AVG(x) OVER (ORDER BY day ROWS BETWEEN 2 PRECEDING AND CURRENT ROW). Текущий день плюс два предыдущих: ORDER BY day ROWS BETWEEN 2 PRECEDING AND CURRENT ROW.

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

  1. AVG(x) OVER (ORDER BY day ROWS BETWEEN 3 PRECEDING AND CURRENT ROW)
  2. AVG(x) OVER (PARTITION BY day ROWS BETWEEN 2 PRECEDING AND CURRENT ROW)
  3. AVG(x) OVER (ORDER BY day RANGE UNBOUNDED PRECEDING)
  4. AVG(x) OVER (ORDER BY day ROWS BETWEEN 2 PRECEDING AND CURRENT ROW)правильный ответ

Разбор

Текущий день плюс два предыдущих: ORDER BY day ROWS BETWEEN 2 PRECEDING AND CURRENT ROW. 3 PRECEDING захватит четыре строки. PARTITION BY day сделает окно из одной строки на каждый день, и рамка внутри него ничего не добавит. UNBOUNDED PRECEDING даст нарастающее среднее с начала периода.

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

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

Термины по теме