Встречается на собеседованиях • сегодня

Что такое оконная функция

Оконные функции (window functions) выполняют вычисления над набором строк таблицы, связанных с текущей строкой. В отличие от агрегатных функций, они не группируют строки в одну, а сохраняют исходные строки с добавлением результата вычисления.

Основные компоненты:

  • PARTITION BY - разделяет данные на группы (аналог GROUP BY)
  • ORDER BY - определяет порядок строк в окне
  • ROWS/RANGE - задаёт границы окна

Примеры оконных функций:

sql
-- Ранжирование
SELECT name, salary,
       RANK() OVER (ORDER BY salary DESC) as rank
FROM employees;

-- Скользящее среднее
SELECT date, revenue,
       AVG(revenue) OVER (ORDER BY date ROWS BETWEEN 2 PRECEDING AND CURRENT ROW) as moving_avg
FROM sales;

Часто используемые функции: ROW_NUMBER(), RANK(), DENSE_RANK(), LEAD(), LAG(), FIRST_VALUE(), SUM(), AVG() и другие агрегатные.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы