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 :

COMPTEUR ET GROUP BY (débutant)


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 28
    Points : 23
    Points
    23
    Par défaut COMPTEUR ET GROUP BY (débutant)
    bonjour,
    ma problématique est la suivante, je cherche à obtenir une liste de mes sommes par projet.
    Le projet étant codifié dans "matable" par une colonne "projet".
    je réussis à faire la somme, mais soit c'est pour tous les projets, soit c'est pour un projet à partir d'un critère "projet = critere".
    Ma table comprend l'ensemble des projets, et je ne sais pas où placer mon GROUP BY pour obtenir les regroupement... j'ai fait plusieurs tentatives mais sans résultats convainquants...

    ma requête actuelle :
    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
    SELECT  SUM(cnt.cnt)
    FROM    (   SELECT  count(a.colonne3)  AS cnt
                FROM  matable a 
                WHERE   SUBSTRING (a.colonne3,1,3)='REF'           
                    AND a.colonne1 = critere1
                    AND a.colonne2 = critere2
            UNION
                SELECT  count(b.colonne3)  AS cnt
                FROM  matable b 
                WHERE   SUBSTRING (b.colonne3,16,3)='REF'           
                    AND b.colonne1 = critere1
                    AND b.colonne2 = critere2
            UNION
                SELECT  count(c.colonne3)  AS cnt
                FROM  matable c 
                WHERE   SUBSTRING (c.colonne3,31,3)='REF'         
                    AND c.colonne1 = critere1
                    AND c.colonne2 = critere2
            UNION
                SELECT  count(d.colonne3)  AS cnt
                FROM  matable d 
                WHERE   SUBSTRING (d.colonne3,46,3)='REF'         
                    AND d.colonne1 = critere1
                    AND d.colonne2 = critere2
            )   AS cnt
    exemple :
    matable
    colonne1 colonne2 colonne3 projet
    A B REF...REF P1
    A B REF P2
    A B REF...REF...REF P3
    A B P4
    A B REF P1
    A B REF...REF P3


    avec ma requete j'obtiens : 09 (total des REF tous projets confondus)
    et je cherche à obtenir :
    P1 P2 P3 P4
    03 01 05 00

    Merci pour votre aide

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer un compteur par groupe t-sql
    Par doudou8mc dans le forum Langage SQL
    Réponses: 6
    Dernier message: 15/06/2014, 10h26
  2. Aide sur GROUP BY (débutant)
    Par zouzoukha dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/03/2011, 00h08
  3. [débutant] problème avec Group by
    Par Amenofis dans le forum Débuter
    Réponses: 5
    Dernier message: 25/05/2005, 09h57
  4. [CR][.NET][Débutant] Création d'un Etat groupé
    Par SoaB dans le forum SAP Crystal Reports
    Réponses: 8
    Dernier message: 09/05/2005, 14h28
  5. [Débutant][VB 5.0] Obtenir les groupes locaux W2K
    Par Banana_Ultra dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 01/10/2004, 14h07

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