Soustraction requête SQL

Nicolas.SQL Messages postés 2 Statut Membre -  
crapoulou Messages postés 28002 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -

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. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     

    Bonjour,

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

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

    0
    1. Nicolas.SQL Messages postés 2 Statut Membre
       

      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
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Nicolas.SQL Messages postés 2 Statut Membre
         

        bonjour,

        montre-nous la requête adaptée.

        0
  2. crapoulou Messages postés 28002 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   8 046
     

    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