Soustraction requête SQL

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

  1. Modérateur

    Bonjour,

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

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

    0
    1. 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
    2. Contributeur
      @Nicolas.SQL

      bonjour,

      montre-nous la requête adaptée.

      0
  2. Modérateur

    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