28th Jan 2026 Tempo di lettura: 9 minuti Pacchetto iniziale sulle funzioni finestra per il 2026: impara una competenza avanzata alla settimana nel mese di gennaio LearnSQL.it Team imparare sql window functions Indice Perché vale la pena imparare le funzioni di finestra nel 2026 Settimana 1: Imparare la sintassi di base e il modello mentale Settimana 2: Classificazione e confronto delle righe Settimana 3: Totali parziali e analisi basata sul tempo Settimana 4: Combinare le funzioni di finestra (Window Functions (Funzioni Finestra)) in query reali A chi è rivolto questo Starter Pack Il tuo piano di gennaio in una frase Le funzioni finestra sono una delle competenze SQL più pratiche che puoi apprendere se conosci già le basi e desideri analizzare i dati in modo più efficace. Ti aiutano a confrontare le righe, creare classifiche e tenere traccia delle modifiche nel tempo senza sottodomande complesse. In questo starter pack, imparerai una competenza sulle funzioni finestra alla settimana nel mese di gennaio e trasformerai un argomento avanzato in uno strumento SQL utilizzabile quotidianamente. Le funzioni finestra sono uno di quegli argomenti SQL che spesso vengono etichettati come "avanzati" e poi tranquillamente rimandati. Eppure, nel lavoro di analisi reale, sono uno dei modi più veloci per migliorare il proprio livello. Ti consentono di analizzare i dati riga per riga senza perdere dettagli, evitare subquery complesse e scrivere SQL che riflette effettivamente il tuo modo di pensare ai dati. Gennaio è un buon momento per affrontarle. Nuovi cicli di reporting, nuovi progetti e spesso nuovi obiettivi di apprendimento. Invece di cercare di imparare tutto in una volta, questo approccio starter pack si concentra su una competenza pratica alla settimana. Dopo un mese, non solo riconoscerai le funzioni finestra, ma saprai anche come usarle. Questo articolo mostra come strutturare quel mese e come utilizzare le risorse di LearnSQL.it per rendere il processo efficiente e realistico. Ogni risorsa di LearnSQL.com ha un ruolo chiaro: Il corso Window Functions (Funzioni Finestra) insegna in dettaglio i concetti e la sintassi delle funzioni finestra. Oltre 200 esercizi pratici assicurano il rafforzamento di ogni concetto e consentono di fare molta pratica. Il foglio di riferimento "Window Functions (Funzioni Finestra)" è un documento scaricabile che riassume la sintassi, le clausole chiave e le funzioni finestra più comunemente utilizzate. È disponibile nei formati A4, Letter, A3, Ledger e PDF ottimizzato per dispositivi mobili, per una rapida consultazione durante l'utilizzo delle funzioni finestra. Insieme, formano un ciclo di apprendimento completo: imparare, esercitarsi, applicare. Perché vale la pena imparare le funzioni di finestra nel 2026 La maggior parte del lavoro SQL nel mondo reale non riguarda i totali. Riguarda i confronti: Chi ha venduto più del mese scorso? Quale prodotto è al primo posto in ogni categoria? Come si confronta il valore odierno con quello della riga precedente? Le query classiche GROUP BY classiche hanno difficoltà a rispondere a queste domande perché rimuovono i dettagli delle singole righe. Le funzioni finestra risolvono questo problema calcolando i valori delle righe correlate mantenendo intatte tutte le righe originali. Immagina una GROUP BY query con il fatturato giornaliero per prodotto. product total_revenue A 1,200 B 900 Questo risultato è utile, ma notate cosa manca: Singolo i giorni sono spariti Non è possibile vedere come sono cambiati i ricavi nel tempo Non è possibile confrontare una riga con un'altra Ora guardiamo il risultato di un calcolo simile utilizzando una funzione finestra. date product revenue running_total 2026-01-01 A 300 300 2026-01-02 A 400 700 2026-01-03 A 500 1,200 2026-01-01 B 200 200 2026-01-02 B 300 500 2026-01-03 B 400 900 Qui, ogni riga originale viene conservata e viene aggiunta una colonna analitica extra. È possibile vedere immediatamente: Come si accumulano i totali nel tempo Come ogni riga contribuisce al risultato finale I modelli e le tendenze che GROUP BY nascondono Questo è il vantaggio principale delle funzioni finestra. Consentono di calcolare classifiche, totali parziali e medie mobili senza perdere i dettagli a livello di riga. Se conosci già le nozioni di base di SQL – SELECT, WHERE, GROUP BYe JOIN , le funzioni finestra sono il passo successivo più naturale per l'analisi, il reporting, la finanza, l'analisi delle prestazioni di marketing e il lavoro sui dati di prodotto. Settimana 1: Imparare la sintassi di base e il modello mentale L'obiettivo della prima settimana è comprendere il concetto alla base delle funzioni finestra. Le funzioni finestra sembrano intimidatorie principalmente perché introducono una nuova sintassi. Una volta compresa l'idea di "finestra", tutto il resto diventa più facile. Una tipica funzione finestra ha questa struttura: function_name(column) OVER (...) L'elemento chiave è la OVER() . Definisce la finestra, ovvero l'insieme di righe che la funzione esamina quando esegue un calcolo. Se si utilizza SUM(revenue) OVER(), la finestra è l'intero insieme di risultati. La funzione esamina tutte le righe contemporaneamente. date product revenue total_revenue 2026-01-01 A 300 1,200 2026-01-02 A 400 1,200 2026-01-03 B 500 1,200 Ogni riga rimane nel risultato e lo stesso totale appare accanto a ciascuna di esse. Ciò consente di calcolare i rapporti, ad esempio quanto ogni riga contribuisce al fatturato totale. Se si utilizza SUM(revenue) OVER (PARTITION BY product), la finestra non è più l'intera tabella. Al contrario, SQL crea una finestra separata per ciascun prodotto. date product revenue product_total 2026-01-01 A 300 700 2026-01-02 A 400 700 2026-01-03 B 500 500 In questo caso, le righe sono raggruppate in modo logico, ma non compresse. Ogni riga "vede" solo le righe dello stesso prodotto quando viene eseguito il calcolo. Questo è il modello mentale di base delle funzioni finestra. Si definisce una finestra di righe correlate, si applica un calcolo e si mantengono tutte le righe originali nel risultato. Settimana 2: Classificazione e confronto delle righe Una volta chiarite le nozioni di base, è il momento di imparare a conoscere le nuove funzioni finestra. Le funzioni di classificazione sono solitamente la prima famiglia di funzioni finestra che si impara. Questa settimana ci concentreremo su ROW_NUMBER(), RANK()e DENSE_RANK(). Queste funzioni sono comunemente utilizzate per le classifiche, le query top-N e l'identificazione dei duplicati o dei primi record all'interno di un gruppo. Immaginiamo una tabella denominata sales_summary con il fatturato totale per prodotto: product revenue A 1,000 B 1,000 C 800 Ora consideriamo la seguente query: SELECT product, revenue, RANK() OVER (ORDER BY revenue DESC) AS revenue_rank FROM sales_summary; In questa query, la classifica si basa sulla colonna revenue colonna. La OVER (ORDER BY revenue DESC) definisce la finestra e l'ordine utilizzati solo per il calcolo della classifica, non per l'ordinamento del set di risultati finale. product revenue revenue_rank A 1,000 1 C 800 3 B 1,000 1 I prodotti A e B ricevono lo stesso rango perché hanno lo stesso ricavo. Il rango successivo è 3 perché RANK() lascia degli spazi vuoti in caso di parità. Si noti che l'ordinamento all'interno di OVER() viene utilizzato solo per determinare come viene calcolata la classifica, non come vengono visualizzati i risultati. Qui, i prodotti A e B condividono lo stesso rango perché hanno lo stesso fatturato. Il rango successivo viene saltato, che è esattamente come RANK() . Esistono altre funzioni di classificazione che hanno un comportamento diverso: se si utilizzasse DENSE_RANK() , il prodotto C riceverebbe il rango 2. Se si utilizzasse ROW_NUMBER(), ogni riga otterrebbe un numero univoco, anche quando i valori sono pari. L'idea chiave rimane la stessa: la OVER (ORDER BY ...) clausola definisce la finestra e l'ordine in cui vengono confrontate le righe. Continui a seguire il corso Window Functions (Funzioni Finestra), in particolare le parti 4 e 5, dove le funzioni di classificazione sono spiegate in dettaglio con esempi pratici. Questo è anche il momento giusto per iniziare a utilizzare il cheat sheet SQL Window Functions (Funzioni Finestra). Il cheat sheet ti aiuta a ricordare rapidamente la sintassi e il comportamento delle funzioni, così puoi concentrarti sulla comprensione di quando utilizzare ciascuna funzione di classificazione piuttosto che memorizzare i dettagli. Settimana 3: Totali parziali e analisi basata sul tempo Nella terza settimana, le funzioni finestra iniziano a sembrare veri e propri strumenti analitici. Qui imparerete a calcolare i totali progressivi, le somme cumulative e le medie mobili, modelli che compaiono costantemente nel lavoro con i dati reali. Immagina una tabella con le entrate giornaliere: date revenue 2026-01-01 300 2026-01-02 400 2026-01-03 500 Per calcolare un totale progressivo, puoi utilizzare la seguente funzione finestra: SELECT date, revenue, SUM(revenue) OVER (ORDER BY date) AS running_total FROM daily_sales; In questo caso, la finestra è definita da ORDER BY date. Per ogni riga, la funzione esamina tutte le righe fino alla data corrente e calcola la somma cumulativa. Ogni riga mantiene i propri dati originali e il totale progressivo mostra come i valori si accumulano nel tempo. Ciò sarebbe difficile e molto meno leggibile da ottenere con le sottoquery. date revenue running_total 2026-01-01 300 300 2026-01-02 400 700 2026-01-03 500 1,200 Questa settimana si concentra sulla comprensione di come funzioni aggregate come SUM() e AVG() quando vengono utilizzate come funzioni finestra e come l'ordinamento delle righe per data o sequenza influisca sul risultato. Questi modelli sono ampiamente utilizzati nella rendicontazione finanziaria, nell'analisi delle prestazioni di marketing e nelle metriche di prodotto, ovunque siano importanti i cambiamenti nel tempo. Continuerete con il corso Window Functions (Funzioni Finestra), concentrandovi sulle parti 6 e 7, dove vengono spiegati in dettaglio l'analisi basata sul tempo e i calcoli cumulativi. Questo è anche il punto in cui la pratica è più importante. Il set di esercizi "Window Functions (Funzioni Finestra)" vi offre esercizi strutturati che utilizzano set di dati reali, costringendovi a pensare in termini di finestre piuttosto che di sottoquery. La ripetizione è ciò che trasforma la comprensione in una competenza reale e utilizzabile. Settimana 4: Combinare le funzioni di finestra (Window Functions (Funzioni Finestra)) in query reali L'ultima settimana è dedicata alla sintesi di tutto ciò che è stato appreso. Nei progetti reali, le funzioni finestra sono raramente utilizzate in modo isolato. Le query spesso combinano classifiche, calcoli cumulativi e partizioni, il che rende particolarmente importanti la chiarezza e la struttura. Questa settimana ti concentrerai sulla scrittura di query che utilizzano più funzioni finestra senza diventare difficili da leggere o mantenere. Imparerai come combinare le funzioni di classificazione con i totali parziali, come applicare diverse partizioni nella stessa query e come evitare errori comuni come l'ordinamento errato all'interno OVER() o il nesting non necessario. Continuerai con il corso "Window Functions (Funzioni Finestra)", completando le parti 8, 9 e 10, dove vengono trattati modelli più complessi e realistici. Il set di esercizi "Window Functions (Funzioni Finestra)" aiuta a rafforzare questi modelli attraverso la ripetizione pratica, mentre il cheat sheet "SQL Window Functions (Funzioni Finestra)" diventa il tuo riferimento quotidiano quando scrivi query con funzioni finestra al lavoro. A chi è rivolto questo Starter Pack Questo piano è ideale se conosci già le basi dell'SQL e desideri passare a un lavoro più analitico. È adatto ad analisti di dati, esperti di marketing, specialisti di prodotto e sviluppatori che lavorano con report o metriche. Se sei completamente nuovo all'SQL, è meglio iniziare con i fondamenti dell'SQL prima di passare alle funzioni finestra. Il tuo piano di gennaio in una frase Una competenza SQL avanzata, quattro settimane di studio mirato e tre risorse comprovate di LearnSQL.it. Inizia con il corso Window Functions (Funzioni Finestra), tieni aperto il cheat sheet mentre impari e usa il set di esercizi per fissare tutto. Entro la fine di gennaio, le funzioni finestra non ti sembreranno più avanzate, ma naturali. Tags: imparare sql window functions