IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Plusieurs SUM et jointure.


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 145
    Points : 77
    Points
    77
    Par défaut Plusieurs SUM et jointure.
    Bonjour à tous,

    je fais un jointure avec 3-4 tables : projet, etape, action_etape et activite interne.

    Sachant que dans la table projet je veux la somme du temps passé(activite interne) et la somme du temps des etapes qui reste a faire(projet_étape et projet_action_etape ).

    J'ai fais une requete qui marche mais je voudrais avoir votre avis sur la syntaxe parce que je n'ai vu ca nulle part.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    SELECT
    projet_affaire.id_projet_affaire,
    paff_titre,
    paff_description,
    jh_fait,
    jh_raf,
    jh_vendus
     
    FROM projet_affaire
     
    LEFT JOIN
    (SELECT id_projet_affaire, SUM(ai_duree) AS jh_fait
    FROM activite_interne
    GROUP BY id_projet_affaire
    ) AS activite_interne_temp
    ON activite_interne_temp.id_projet_affaire = projet_affaire.id_projet_affaire
     
    LEFT JOIN
    (
    SELECT SUM(pae_nb_jh_raf) AS jh_raf, SUM(pae_nb_jh_vendu) AS jh_vendus, id_projet_affaire
    FROM projet_etape
    LEFT JOIN projet_action_etape ON projet_action_etape.id_projet_etape= projet_etape.id_projet_etape
    GROUP BY id_projet_affaire
    ) AS etape_temp
    ON etape_temp.id_projet_affaire = projet_affaire.id_projet_affaire;
    Merci pour vos réponses!

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 102
    Points : 28 387
    Points
    28 387
    Par défaut
    Et où est le problème. Bien sur que ça fonctionne. Très bien même.
    On nomme tables dérivées ces sous-requêtes utilisées comme des tables dans une requête.
    Si tu avais utilisé des vues au lieu de ces sous-requêtes, cela t'aurait semblé tout à fait normal.

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 80
    Points : 199
    Points
    199
    Par défaut
    Juste une petite question pour al1_24 : est-ce que ce genre de sous-requête dans les join fonctionne sur tous les SGBD classique (SQL Serveur, ORACLE, Interbase/Firebird, MySQL,...) ou bien y en a-t-il qui ne l'acceptent pas ?

Discussions similaires

  1. Requête avec plusieurs SUM
    Par jgfa9 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/06/2009, 16h06
  2. plusieurs SUM() sur une meme colonne ?
    Par Seb33300 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 15/12/2008, 11h29
  3. Update Sum et Jointure, impossible ?
    Par UVB_PC dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/10/2008, 13h42
  4. select sur plusieurs table sans jointure
    Par oska06 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 16/09/2008, 11h04
  5. Plusieurs SUM dans une requête
    Par pj69100 dans le forum Requêtes
    Réponses: 6
    Dernier message: 02/01/2007, 10h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo