Funzioni di aggregazione in SQL e loro utilizzo

Funzioni di aggregazione in SQL e loro utilizzo

In questo tutorial, discuteremo le diverse funzioni di aggregazione in SQL e come possiamo usarle. In SQL, le funzioni di aggregazione vengono utilizzate per accumulare dati da più righe in un'unica riga di riepilogo. 

Le funzioni di aggregazione in SQL possono essere molto utili per gli analisti quando eseguono il riepilogo dei dati.

Sommario

Funzioni di aggregazione comunemente utilizzate in SQL

Di seguito sono mostrate alcune delle funzioni di aggregazione comunemente utilizzate in SQL .

Funzioni di aggregazione in SQL e loro utilizzo

Si noti che le funzioni e sono comunemente utilizzate nelle valute o nei valori interi. La funzione AVG restituisce non solo la media ma anche la media di una colonna. Inoltre, la funzione aggregata è l'unica che non ignora i valori null durante l'esecuzione dei calcoli.

Facciamo alcuni comandi di esempio usando le nostre cinque funzioni di aggregazione con la tabella di esempio qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Innanzitutto, eseguiamo un comando utilizzando la funzione MAX . Supponiamo di voler trovare il prodotto con il valore più alto nella colonna ProductName. Il nostro comando dovrebbe assomigliare all'immagine qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Poiché stiamo trovando il prodotto con il valore più alto, dobbiamo ottenere i relativi prezzi, che si trovano nella colonna ProductPrice . Inserisci sempre un alias per fornire un nome alla colonna di output. Se eseguiamo quel comando, ci mostrerà il prodotto con il valore più alto con un solo valore. 

Successivamente, eseguiamo un comando utilizzando la funzione MIN . Poiché la funzione MIN è in qualche modo simile alla funzione MAX , utilizzeremo semplicemente lo stesso esempio utilizzato nella funzione MAX , ma questa volta troveremo il prodotto con il valore più basso.

Funzioni di aggregazione in SQL e loro utilizzo

Quando eseguiamo questo comando, recupererà il prodotto con il valore più basso nella nostra tabella di esempio.

Ora creiamo un comando utilizzando la funzione COUNT . Diciamo che vogliamo trovare la quantità dei prodotti sotto la colonna ProductID . Il nostro comando dovrebbe assomigliare all'immagine qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Se eseguiamo questo comando, ci mostrerà la quantità di ciascun prodotto sotto la colonna ProductID e il rispettivo prezzo.

Funzioni di aggregazione e clausola GROUP BY

Ora, discutiamo di come possiamo utilizzare più colonne con funzioni di aggregazione . Per fare ciò, dobbiamo usare la clausola GROUP BY .

La funzione GROUP BY viene utilizzata principalmente nelle funzioni di aggregazione in quanto restituisce un record da ciascun gruppo. Inoltre, tutte le colonne nell'istruzione SELECT anche senza aggregazione dovrebbero essere comunque incluse.

Discutiamo di come utilizzeremo le funzioni di aggregazione con la clausola GROUP BY con la nostra tabella di esempio di seguito.

Funzioni di aggregazione in SQL e loro utilizzo

Innanzitutto, proviamo ad eseguire un comando senza utilizzare la clausola GROUP BY per vedere la differenza. Troviamo il totale SaleAmount all'interno della colonna ProductName . Il nostro comando dovrebbe assomigliare all'immagine qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Come hai notato, il comando è simile agli esempi precedenti che abbiamo menzionato all'inizio di questo tutorial. Una volta eseguito questo comando, calcolerà semplicemente l'importo totale nella colonna SaleAmount , che sarà 28 .

Ora, facciamo un altro esempio usando la clausola GROUP BY

Funzioni di aggregazione in SQL e loro utilizzo

Poiché stiamo utilizzando la clausola GROUP BY , ora siamo in grado di utilizzare più colonne. Questa volta, vogliamo vedere il totale SaleAmount per categoria.

La clausola GROUP BY farà in modo che il risultato mostri una somma delle vendite per ogni categoria e, se eseguita, il risultato sarà l'immagine qui sotto.

In questo esempio, è importante utilizzare la clausola GROUP BY perché in caso contrario si verificherà un errore. Questo perché la categoria non è contenuta in una clausola GROUP BY o in una funzione di aggregazione.

Funzioni di aggregazione in SQL e loro utilizzo

Facciamo lo stesso esempio, ma questa volta otterremo anche il totale SaleAmount per ProductName . Il nostro comando dovrebbe assomigliare all'immagine qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Una volta eseguito il nostro comando, il risultato mostrerà la somma delle vendite per Categoria e per ProductName .

Funzioni di aggregazione in SQL e loro utilizzo

Ricorda che non puoi usare o accedere a più colonne senza usare la clausola GROUP BY perché se lo facessi, causerebbe un errore una volta eseguito il comando.

Funzioni di aggregazione in SQL Server Management Studio (SSMS)

Parliamo ora di come utilizzare le funzioni di aggregazione in SQL Server Management Studio . Useremo la tabella sottostante nei nostri esempi.

Funzioni di aggregazione in SQL e loro utilizzo

Abbiamo 31.465 righe di dati nella nostra tabella SalesOrderHeader . Per il nostro primo esempio, dimostreremo come possiamo utilizzare la funzione COUNT contando le righe nella nostra tabella. Il nostro comando dovrebbe assomigliare all'immagine qui sotto.

Funzioni di aggregazione in SQL e loro utilizzo

Abbiamo contato correttamente tutte le righe presenti nel nostro SalesOrderHeader e le abbiamo denominate countofrows . Una volta eseguito questo comando, avremo un risultato di 31.465 righe .

Torniamo al nostro set di dati. Utilizzando la stessa funzione di aggregazione , contiamo quanti SalesPersonID sono presenti nella nostra tabella. Il nostro comando dovrebbe essere:

Funzioni di aggregazione in SQL e loro utilizzo

Quando eseguiamo il nostro comando, recupererà in modo specifico i dati nella colonna SalesPersonsID e ci fornirà una colonna denominata countofsalespersons con il risultato di 3806 .

Funzioni di aggregazione in SQL e loro utilizzo

Utilizzo di funzioni di aggregazione in una singola query

Andando avanti, discutiamo di come possiamo utilizzare più funzioni di aggregazione in una singola query. Utilizzeremo le funzioni SUM , AVG e MAX per aggregare le nostre colonne TotalDue e TaxAmt

Funzioni di aggregazione in SQL e loro utilizzo

Possiamo utilizzare più funzioni di aggregazione in una singola query inserendo una virgola dopo ogni funzione. 

Funzioni di aggregazione in SQL e loro utilizzo

Una volta eseguito questo comando, il nostro risultato dovrebbe assomigliare all'immagine qui sotto. 

Funzioni di aggregazione in SQL e loro utilizzo

Ora possiamo vedere le diverse colonne insieme al rispettivo valore utilizzando più funzioni di aggregazione

Proviamo ad eseguire un comando in cui causerà un errore per enfatizzare il motivo per cui dovremmo usare la clausola GROUP BY quando selezioniamo le colonne. Useremo lo stesso esempio utilizzando più funzioni ma questa volta selezioneremo CustomerID .

Funzioni di aggregazione in SQL e loro utilizzo

Come puoi vedere, dice che il comando non è valido perché CustomerID non è contenuto né nella funzione di aggregazionenella clausola GROUP BY .

Esempio di scenario con clausola GROUP BY

Per il nostro prossimo esempio, correggiamo il nostro errore fornendo la clausola GROUP BY nel nostro comando.

Funzioni di aggregazione in SQL e loro utilizzo

Abbiamo appena aggiunto CustomerID in una clausola GROUP BY e ora possiamo vedere la somma, la media e il valore massimo di TotalDue e TaxAmt per CustomerID. Possiamo anche vedere che abbiamo un totale di 19119 righe .

Facciamo il nostro ultimo esempio discutendo perché è importante per noi assicurarci che le colonne e le espressioni non aggregate siano incluse nella clausola GROUP BY .

Nella nostra tabella SalesOrderHeader , abbiamo la colonna OrderDate . Supponiamo di voler ottenere la sommatoria di TotalDue per anno. Se non indicheremo tutte le colonne e le espressioni non aggregate, dobbiamo utilizzare il comando dall'immagine sottostante.

Funzioni di aggregazione in SQL e loro utilizzo

Nota come siamo in grado di ottenere un risultato piuttosto che un errore. Tuttavia, abbiamo più report per lo stesso anno quando il nostro obiettivo è quello di riepilogare i report in un valore specifico all'anno.

Per correggere il nostro errore, dobbiamo assicurarci di includere l'espressione anche nella nostra clausola GROUP BY . Il nostro nuovo comando dovrebbe essere:

Funzioni di aggregazione in SQL e loro utilizzo

Dopo aver eseguito il comando, possiamo vedere che abbiamo ottenuto correttamente la somma di OrderDate per anno. 

Clausola HAVING In SQL Funzioni di aggregazione
Procedure memorizzate in SQL | Una panoramica
Modi efficaci per utilizzare la funzione GROUPBY in LuckyTemplates

Conclusione

Per riassumere, hai appreso alcune delle conoscenze di base relative all'uso delle funzioni di aggregazione in SQL. Le funzioni di aggregazione possono essere molto ideali quando si lavora con report o set di dati di grandi dimensioni in quanto offrono comodità agli analisti durante l'analisi e il riepilogo dei dati. 

Si spera che questo tutorial possa aiutarti ad avere una migliore pratica nell'utilizzo di diverse funzioni di aggregazione in SQL. Se desideri saperne di più su questo argomento e altri contenuti correlati, puoi sicuramente consultare l'elenco dei link pertinenti di seguito.

Ti auguro il meglio,

Hafiz


Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo blog tratterà anche come importare oggetti da R a LuckyTemplates.

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Mostra approfondimenti utilizzando la tecnica di visualizzazione dinamica multi-thread in LuckyTemplates

Questo tutorial illustrerà come utilizzare la tecnica di visualizzazione dinamica multi-thread per creare approfondimenti dalle visualizzazioni di dati dinamici nei report.

Introduzione al filtraggio del contesto in LuckyTemplates

Introduzione al filtraggio del contesto in LuckyTemplates

In questo articolo, esaminerò il contesto del filtro. Il contesto del filtro è uno degli argomenti principali che qualsiasi utente di LuckyTemplates dovrebbe inizialmente conoscere.

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

I migliori suggerimenti per lutilizzo delle app nel servizio online LuckyTemplates

Voglio mostrare come il servizio online di LuckyTemplates Apps può aiutare nella gestione di diversi report e approfondimenti generati da varie fonti.

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Analizza le variazioni del margine di profitto nel tempo: analisi con LuckyTemplates e DAX

Scopri come elaborare le modifiche al margine di profitto utilizzando tecniche come la ramificazione delle misure e la combinazione di formule DAX in LuckyTemplates.

Idee di materializzazione per cache di dati in DAX Studio

Idee di materializzazione per cache di dati in DAX Studio

Questo tutorial discuterà delle idee di materializzazione delle cache di dati e di come influiscono sulle prestazioni dei DAX nel fornire risultati.

Reporting aziendale tramite LuckyTemplates

Reporting aziendale tramite LuckyTemplates

Se finora utilizzi ancora Excel, questo è il momento migliore per iniziare a utilizzare LuckyTemplates per le tue esigenze di reportistica aziendale.

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cosè il gateway LuckyTemplates? Tutto quello che devi sapere

Che cos'è il gateway LuckyTemplates? Tutto quello che devi sapere