Requete sql qui calcule la valeur des champs

Signaler
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016
-
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
-
Bonjour,
je suis sous sql server 2012 server . et je suis en train de développée une application sous c sharp . j'ai 4 table :
1 article (num, article,reference , code, quantite,date, prix , fourniseur)
2- mouvment d'entre ( article , reference,date, quantiteE,fournisseur)
3-mouvment de sortie ( article, reference,date,quantiteS,fourniseur,client)
4- stock (article, refernce,;quantiteSt)
comment faire pour remplir en quantitest la sum des (quantiteE)-(quantiteS)
merci d'avances

2 réponses

Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
156
Peut être avec une sous requête ou une agrégation ?

SELECT *,(SELECT SUM(E.quantiteE) FROM MvtEntree E WHERE E.article=A.article)-(SELECT SUM(S.quantiteS) FROM MvtSortie S WHERE S.article=A.article) FROM article A

ou :
SELECT A.*, SUM(E.quantiteE) AS SumE, SUM(S.quantiteS) AS SumS FROM Article A LEFT JOIN MvtEntree E ON E.article=A.article LEFT JOIN MvtSortie S ON S.article=A.article


Non testé, peut être erroné, mais l'idée est là.
Il te faudra peut être aussi géré le cas où une table ne contient pas l'article (ça te retournera un null qui peut poser des PB avec les calculs).
Messages postés
32986
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
18 juin 2021
351
Bonjour
Il manque les GROUP BY
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
156
En effet, merci Jordan45, pour la 2ième requête, il faut ajouter
... GROUP BY A.article
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

je te remercie pour votre réponse , dans mon cas aucun colonne ne sera nul car toutes les colonne seront entre par une interface dans c sharp qui contient déjà un test des valeur null
mais je crois que votre requete contient juste une résulta de section comment je peux metre le resulta de sélection dans un update pour remplir qte en stock
merci d'avnces
Messages postés
14799
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
156
UPDATE ... SET ..., Champ=(SELECT ... ) WHERE ...


Je pense.
Messages postés
20
Date d'inscription
mardi 30 avril 2013
Statut
Membre
Dernière intervention
6 novembre 2016

je vous remercier pour votre collaboration je fais un test demain et je reviens vers vous merci une autre fois