SQL in esecuzione totale

SQL in esecuzione totale

In SQL, un totale in esecuzione si riferisce alla somma di tutti i valori nelle righe precedenti in una colonna specifica.

Ad esempio, considera la tabella mostrata di seguito:

Si noti che la colonna Cum_total contiene la quantità totale in quella riga corrente. Ad esempio, nella prima riga, il totale era 500; Nel secondo, la somma è uguale alla riga di corrente precedente.

Il totale cumulativo viene aggravato dopo ogni colonna prendendo la somma di tutte le righe precedenti e aggiungendola al valore della riga corrente.

SQL Calcola in esecuzione totale

Il modo migliore per calcolare il totale in esecuzione è utilizzare le funzioni della finestra. Una funzione finestra consente di eseguire un'operazione specifica sulle righe e restituire un singolo valore aggregato per ogni riga.

La sintassi seguente illustra come utilizzare una funzione finestra per calcolare il totale in esecuzione:

Window_Function (colonna)
Over ([partizione per partizione_list] [ordine per ordine_list])

Un esempio è usare la funzione Sum ().

Supponiamo di avere una tabella come mostrato di seguito:

Per calcolare il totale in esecuzione, possiamo utilizzare una funzione Windows come mostrato di seguito:

Seleziona Product_Name, Product_Category, Quantity, Sum (quantità) Over (Order by Product_Name) come Cum_Total
Dai prodotti;

È necessario utilizzare la clausola over con una funzione finestra quando si determina un totale in esecuzione.

Supponiamo di avere i dati organizzati in vari gruppi. Ad esempio, la quantità di ciascun Product_Category è mostrata individualmente?

Possiamo aggiungere la partizione per clausola come mostrato nella sintassi seguente.:

Seleziona colonna (i)
aggregate_function (column_name)
Over (partizione per categoria Ordine di)
Come column_name
Da table_name;

La query dovrebbe suddividere i dati in vari gruppi e calcolare il totale in esecuzione.

Conclusione

Questo articolo ha coperto il totale in esecuzione e come puoi calcolarlo in SQL utilizzando una funzione finestra.

Grazie per la lettura e rimanete sintonizzati per ulteriori informazioni!