Multiplier à l'aide d'une somme dans Oracle

La fonction "Somme" d'Oracle vous permet d'additionner toutes les données d'une colonne spécifiée et affiche un résultat dans les résultats de votre requête. Vous pouvez utiliser la fonction multiple avec la fonction somme pour multiplier les résultats de la fonction somme. Vous utilisez cette fonction dans les requêtes complexes où vous devez renvoyer plusieurs résultats mathématiques à l'utilisateur.

Objectif

Le but de la fonction de somme est d'ajouter rapidement plusieurs lignes de données à l'aide du moteur de base de données Oracle. La fonction de somme est rapide, vous n'ajoutez donc pas manuellement les valeurs dans une structure en boucle, ce qui ralentit votre serveur de base de données. En utilisant ensemble la fonction de somme et la fonction de multiplication, vous pouvez obtenir deux valeurs, la somme et le produit multiplié, sans créer deux requêtes pour deux valeurs.

Fonction de somme

La fonction de somme est utilisée dans votre requête "sélection". Vous devez spécifier une colonne que vous souhaitez additionner dans la fonction de somme. Le code suivant additionne toutes les commandes clients et affiche le résultat :

sélectionnez sum (order_total) comme Total à partir des commandes où customerid = 22

Les résultats de la requête ci-dessus indiquent le montant total pour l'ID client 22.

Multiplier

Après avoir écrit la fonction de somme, vous pouvez multiplier par un nombre spécifié ou utiliser une autre colonne pour l'équation de multiplication. Par exemple, le code suivant multiplie le total par le nombre de commandes produites par le client :

sélectionnez sum (order_total) comme Total, sous (order_total) * count (orderid) à partir des commandes où customerid = 22

La requête ci-dessus montre les deux résultats, mais vous pouvez combiner les deux équations en une seule, ce qui produit une valeur dans les résultats.

Considérations

Si vous devez multiplier des enregistrements individuels, vous devez créer des requêtes pour chaque enregistrement. Vous pouvez également créer un curseur dans Oracle pour parcourir un certain nombre d'enregistrements et enregistrer chaque résultat dans une variable. Les curseurs sont plus lents dans Oracle, mais ils sont utilisés dans les cas où vous n'avez qu'une seule option pour renvoyer les résultats pour plusieurs enregistrements individuellement.