Data Analytics

SQL - Window Functions

ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, NTILE, SUM OVER, PARTITION BY, frames

20 perguntas de entrevista·
Mid-Level
1

O que é uma window function em SQL?

Resposta

Uma window function realiza um cálculo em um conjunto de linhas relacionadas à linha atual, sem reduzir os resultados a uma única linha de saída. Diferente do GROUP BY que reduz o número de linhas, uma window function preserva todas as linhas no resultado enquanto adiciona uma coluna calculada. A cláusula OVER() define a janela sobre a qual o cálculo é realizado.

2

Qual cláusula é obrigatória para definir uma window function?

Resposta

A cláusula OVER() é obrigatória para qualquer window function. Ela informa ao motor SQL que a função deve ser executada como uma window function em vez de uma função de agregação regular. OVER() pode conter PARTITION BY, ORDER BY e uma especificação de frame, mas também pode permanecer vazia para aplicar o cálculo em todo o conjunto de resultados.

3

Qual é o papel de PARTITION BY em uma window function?

Resposta

PARTITION BY divide o conjunto de linhas em grupos (partições) independentes, e a window function é aplicada separadamente a cada partição. Diferente do GROUP BY, PARTITION BY não reduz o número de linhas no resultado. Por exemplo, SUM(sales) OVER(PARTITION BY region) calcula as vendas totais por região enquanto preserva cada linha individual.

4

Qual é a principal diferença entre GROUP BY e PARTITION BY?

5

O que ROW_NUMBER() OVER(ORDER BY salary DESC) retorna?

+17 perguntas de entrevista

Domine Data Analytics para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis