Middle
O que são funções de janela em SQL e para que são usadas?
sobes.tech IA
Resposta da IA
As funções de janela (window functions) em SQL são funções que realizam cálculos sobre um conjunto de linhas relacionadas com a linha atual, sem agrupar os resultados numa única linha, como acontece com as funções agregadas.
Permitem, por exemplo, calcular somas móveis, classificar linhas, calcular totais acumulados, médias, etc., mantendo o número original de linhas no resultado.
Exemplo de uso da função de janela ROW_NUMBER():
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 funcionário, é calculado o seu ranking por salário dentro do departamento, mantendo todas as linhas.
As funções de janela são úteis para análise, relatórios e cálculos complexos onde é necessário ver o contexto de cada linha em relação às outras.