SQL exécutant le total

SQL exécutant le total

Dans SQL, un total de course fait référence à la somme de toutes les valeurs des lignes précédentes dans une colonne spécifique.

Par exemple, considérez le tableau ci-dessous:

Notez que la colonne CUM_TOTAL contient la quantité totale à cette ligne actuelle. Par exemple, dans la première rangée, le total était de 500; Dans la seconde, la somme est égale à la ligne actuelle précédente.

Le total cumulatif est aggravé après chaque colonne en prenant la somme de toutes les lignes précédentes et en l'ajoutant à la valeur de la ligne actuelle.

SQL Calculer le total en cours d'exécution

La meilleure façon de calculer le total en cours d'exécution est d'utiliser les fonctions de fenêtre. Une fonction de fenêtre vous permet d'effectuer une opération spécifique sur les lignes et de renvoyer une seule valeur d'agrégat pour chaque ligne.

La syntaxe ci-dessous illustre comment utiliser une fonction de fenêtre pour calculer le total en cours:

window_function (colonne)
Sur ([partition par partition_list] [Ordre par ordre_list])

Un exemple consiste à utiliser la fonction sum ().

Supposons que nous ayons une table comme indiqué ci-dessous:

Pour calculer le total en cours d'exécution, nous pouvons utiliser une fonction Windows comme indiqué ci-dessous:

Sélectionnez Product_name, Product_Category, Quantit, Sum (Quantity) Over (Order by Product_name) comme CUM_TOTAL
Des produits;

Vous devez utiliser la clause Over avec une fonction de fenêtre lors de la détermination d'un total en cours d'exécution.

Supposons que les données soient organisées en différents groupes. Par exemple, la quantité de chaque produit_category est affichée individuellement?

Nous pouvons ajouter la clause de partition par la syntaxe ci-dessous.:

Sélectionnez les colonnes (s)
agrégate_function (colonnel_name)
Sur (partition par ordre de catégorie par)
Comme colonnel_name
From Table_Name;

La requête doit partitionner les données en différents groupes et calculer leur total de fonctionnement.

Conclusion

Cet article a couvert le total en cours d'exécution et comment vous pouvez le calculer en SQL à l'aide d'une fonction de fenêtre.

Merci d'avoir lu et restez à l'écoute pour plus!