Middle
Come suddividere i dati in gruppi usando le funzioni di finestra in SQL?
sobes.tech AI
Risposta dell'AI
Le funzioni di finestra in SQL consentono di eseguire calcoli su gruppi di righe, senza ridurre il risultato a una singola riga come con GROUP BY. Operano su un insieme di righe (finestra) definito per ogni riga.
Per suddividere i dati in gruppi e applicare le funzioni di finestra, si utilizza la costruzione OVER (PARTITION BY ...). Ad esempio:
SELECT
employee_id,
department_id,
salary,
RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Qui, i dati vengono suddivisi in gruppi per department_id, e all’interno di ogni gruppo si calcola il rango salariale.
In questo modo, le funzioni di finestra permettono di analizzare i dati per gruppi, mantenendo tutte le righe della tabella originale.