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

Macros et VBA Excel Discussion :

instruction GROUP BY


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut instruction GROUP BY
    bonjour tout le monde;
    j'ai un petit probleme avce goup by;
    ce code fonctionne bien:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
          rSQL = "SELECT  [CONSOMMATEURS$].BUREAU, [GRILLECONSOMMATEURS$].DOSCONFORME, [CONSOMMATEURS$].NOPRET " & _
              " FROM [CONSOMMATEURS$] " & _
              "INNER JOIN [GRILLECONSOMMATEURS$]" & _
              " ON [CONSOMMATEURS$].NOPRET = [GRILLECONSOMMATEURS$].NOPRET "
    mais celui là non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
          rSQL = "SELECT  [CONSOMMATEURS$].BUREAU, [GRILLECONSOMMATEURS$].DOSCONFORME, [CONSOMMATEURS$].NOPRET " & _
              " FROM [CONSOMMATEURS$] " & _
              "INNER JOIN [GRILLECONSOMMATEURS$]" & _
              " ON [CONSOMMATEURS$].NOPRET = [GRILLECONSOMMATEURS$].NOPRET " & _
           "GROUP BY  [CONSOMMATEURS$].BUREAU "
    d'ailleur meme la requete la plus simple avec group by ne fonctionne pas!!!!!!!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
          rSQL = "SELECT  [CONSOMMATEURS$].BUREAU" & _
              " FROM [CONSOMMATEURS$] " & _
                              "GROUP BY  [CONSOMMATEURS$].BUREAU "
    merci par avance!!

  2. #2
    Membre éprouvé Avatar de zebulon2212
    Inscrit en
    Juin 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juin 2006
    Messages : 77
    Par défaut
    Principe fondamental du SQL : pas de group by sans agrégat

    SELECT (DISTINCT) FROM nom table WHERE condition


    (GROUP BY (pour agrégat) nom colonne)


    (HAVING condition de recherché(agrégat))


    (ORDER BY nom colonne ASC,DESC )


    - GROUP BY Partition d’une table.
    Regroupe les valeurs des champs voulus et les classes en ordre croissant (un tri).
    Après les avoir regrouper, elle applique (s’il y a lieu), sur chaque groupe, les opérations statistiques tels SUM, MIN, MAX, AVG et COUNT.  Visualiser la somme et la moyenne des salaires en regroupant les postes et les départements en ordre croissant :
    SELECT poste, dep
    SUM (sal)
    AVG (sal)
    FROM EMP
    GROUP BY poste, dep ;

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut Merci pour ta réponse
    SALUT zebulon

    Tu sais je vois pas bien ce que tu veux dire mais je vais essayer de faire une autre recherche a propos des agrégats et GROUPE BY!!!??merci et je te tiendrai au courant dans quelques instants a+

  4. #4
    Membre chevronné
    Inscrit en
    Janvier 2008
    Messages
    483
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 483
    Par défaut
    Bonjour
    essaie avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select "champ1,champ2,champ3,champ4 From [Feuil1$] Sum(Champ4) As Mont,Group By champ1,champ2,champ3,champ4 Having Champ1=ta condition "
    Abed_H

  5. #5
    Membre éprouvé Avatar de zebulon2212
    Inscrit en
    Juin 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juin 2006
    Messages : 77
    Par défaut
    Ce que je veux dire c'est que pour faire un group by, il faut obligatoirement avoir un agrégat dans la clause select
    un agrégat ça peut être sum, count, avg, etc...
    c'est un calcul en fait

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut ok
    justement j'ai commencer par ça: c'est ma requete au depart
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     rSQL = "SELECT  [CONSOMMATEURS$].BUREAU,SUM([GRILLECONSOMMATEURS$].DOSCONFORME), [CONSOMMATEURS$].NOPRET " & _
              " FROM [CONSOMMATEURS$] " & _
              "INNER JOIN [GRILLECONSOMMATEURS$]" & _
              " ON [CONSOMMATEURS$].NOPRET = [GRILLECONSOMMATEURS$].NOPRET " & _
             "GROUP BY  [CONSOMMATEURS$].BUREAU "
    mais apres je voulais savoir ou se trouve le probleme alors j'ai simplifer pour voir que est ça donne!!!mais rien, alors je pense le probleme ce n'est pas celui des agrégat!! n'esst ce pas?

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut et encore
    d'ailleurs meme sum ne fonctionne pas??? a votre avis est ce que ce n'est pas un probleme de syntaxe????
    la suite de mon code est :
    'Exécution de la Recherche SQL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        Set rsT = New ADODB.Recordset
            With rsT
                .ActiveConnection = Conn
                .Open rSQL, , adOpenKeyset, adLockOptimistic, adCmdTableDirect
            End With
          'Afficher
    [Feuil9].Range("A93").CopyFromRecordset rsT

  8. #8
    Membre éprouvé Avatar de zebulon2212
    Inscrit en
    Juin 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juin 2006
    Messages : 77
    Par défaut
    essaie de remplacer ton group by par un order by, c'est peut-être ça que tu cherche à faire vu que tu n'a pas l'air de maitriser le sql.
    Sinon joins ton fichier que je puisse mieux cerner le problème.

  9. #9
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut ce n'est pas claire
    tout d'abord merci à toi Abd_H;
    ton message n'est assez claire pour moi!!est ce que tu veux dire qu'il faut rajoute des conditions???? explique moi stp ta suggestion merci


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

Discussions similaires

  1. [aide]probléme avec l'instruction group by
    Par diden138 dans le forum Bases de données
    Réponses: 4
    Dernier message: 25/05/2007, 07h09
  2. [SQL] Instruction CREATE GROUP
    Par langelot222 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 23/04/2007, 11h03
  3. Instruction pour créer un fichier text ???
    Par Soulsurfer dans le forum Langage
    Réponses: 2
    Dernier message: 06/08/2002, 11h17
  4. [Crystal Report][VB6] instruction PrintReport
    Par yyyeeeaaahhh dans le forum SDK
    Réponses: 4
    Dernier message: 29/07/2002, 14h58
  5. [TASM] Problème concernant l'instruction LGDT
    Par Ninkosen dans le forum Assembleur
    Réponses: 3
    Dernier message: 15/07/2002, 19h09

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