Sobes.tech
Junior — Middle

Pode explicar o que são funções de janela em SQL?

sobes.tech IA

Resposta da IA

As funções de janela em SQL são funções que permitem realizar cálculos num conjunto de linhas relacionadas com a linha atual, sem agrupar os resultados numa única linha, como acontece com as funções agregadas. São úteis para calcular somas móveis, classificações, contagem de valores acumulados, etc.

Um exemplo de função de janela é ROW_NUMBER(), que numerar as linhas dentro de uma janela definida:

SELECT
  employee_id,
  department_id,
  salary,
  ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank_in_dept
FROM employees;

Aqui, para cada departamento (partição), as linhas são numeradas por ordem decrescente de salário, mas todas as linhas permanecem no resultado.