Soustraction requête SQL

Fermé
Nicolas.SQL Messages postés 2 Date d'inscription dimanche 12 mars 2023 Statut Membre Dernière intervention 12 mars 2023 - Modifié le 14 mars 2023 à 14:38
crapoulou Messages postés 28161 Date d'inscription mercredi 28 novembre 2007 Statut Modérateur, Contributeur sécurité Dernière intervention 21 mai 2024 - 14 mars 2023 à 14:37

Bonjour 


Je début en SQL et je ne voit pas comment faire une soustraction dans cette requête 

Select distinct
T1.Champ1 as champ1,
T1.Champ2 as champ2,
T1.Champ3 as champ3,
T1.Champ4 as champ4,
T1.Champ5 as champ5,
T1.Champ6 as champ6,
T1.Champ7 as champ7,
SUM(T2.Champ8) as champ8
FROM T1, T2
WHERE
T1.Champ1 = T2.Champ1
GROUP BY
T1.Champ1,
T1.Champ2,
T1.Champ3,
T1.Champ4,
T1.Champ5,
T1.Champ6,
T1.Champ7

Je voudrais avoir dans les résultats un champ9 qui me renvois la soustraction : Champ8 - Champ6

Merci pour votre aide

2 réponses

jordane45 Messages postés 38321 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2024 4 707
Modifié le 12 mars 2023 à 20:31

Bonjour,

La réponse est dans la question .. :-)  ou presque

SUM(T2.Champ8)  - T1.Champ6 as champ9

0
Nicolas.SQL Messages postés 2 Date d'inscription dimanche 12 mars 2023 Statut Membre Dernière intervention 12 mars 2023
12 mars 2023 à 21:36

Jordane45
 

Ca ne fonctionne pas

J'ai un retour d'erreur "Les fonctions d'agrégats ne sont pas autorisées en dehors des clauses SELECT ou HAVING"

0
yg_be Messages postés 23361 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 1 556 > Nicolas.SQL Messages postés 2 Date d'inscription dimanche 12 mars 2023 Statut Membre Dernière intervention 12 mars 2023
14 mars 2023 à 13:14

bonjour,

montre-nous la requête adaptée.

0
crapoulou Messages postés 28161 Date d'inscription mercredi 28 novembre 2007 Statut Modérateur, Contributeur sécurité Dernière intervention 21 mai 2024 7 998
Modifié le 14 mars 2023 à 14:42

Bonjour,

Je pense que tu ne pourras pas faire un "DISTINCT" et un "SUM" dans la même requête.

Quelque chose comme ça peut être ?

Select
T1.Champ1 as champ1,
T1.Champ2 as champ2,
T1.Champ3 as champ3,
T1.Champ4 as champ4,
T1.Champ5 as champ5,
T1.Champ6 as champ6,
T1.Champ7 as champ7,
SUM(T2.Champ8)  - T1.Champ6 as champ9
FROM T1, T2
WHERE
T1.Champ1 = T2.Champ1
GROUP BY
T1.Champ1,
T1.Champ2,
T1.Champ3,
T1.Champ4,
T1.Champ5,
T1.Champ6,
T1.Champ7
0