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

Access Discussion :

Regroupement dans une requete


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut Regroupement dans une requete
    Bonjour,

    Voici le code SQL de ma requête, généré par Access :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    PARAMETERS dte_deb DateTime, dte_fin DateTime, [c-rg] Text ( 255 );
    SELECT QuestSatis.InfosRole AS [zone], Count(QuestSatis.NumQuest) AS nb
    FROM QuestSatis
    WHERE (((QuestSatis.Date) Between [dte_deb] And [dte_fin]) AND ((QuestSatis.ProPart)="Particulier") AND ((QuestSatis.ClicRG)=[c-rg]))
    GROUP BY QuestSatis.InfosRole;
    Le regroupement ne fonctionne pas bien, lorsque le champ [infosrole] contient plusieurs occurences vides (""), j'ai par exemple le résultat suivant :

    zone nb
    ____ 1
    ____ 2
    bien 5
    au lieu de :
    zone nb
    ____ 3
    bien 5
    Avez-vous une idée ?

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    tes zones ne doivent aps être vides mais contenir des chaines
    du genre ""; " " ;" ";" "....bon ça suffit tu as compris
    qui sont différenres tout en donnant à l'impression la même allure
    pour traquer cela fait select "--" & [monchamp] & "--"
    tu pourras visualiser les différences

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 136
    Points : 163
    Points
    163
    Par défaut
    salut,

    dans tes
    zone nb
    ____ 1
    ____ 2
    bien 5
    est-il posible que le champ [infosrole] contienne un espace au lieu d'une chaine vide ?

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    non, ce n'est pas le cas, car je les ai testés avec vba :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
                If rcs![zone] <> vide Then
                    titre = rcs![zone]
                Else
                    titre = "non renseigné"
                End If
    Et j'ai à chaque fois, c'est à dire pour les deux lignes pour titre "non renseigné"...

    Et j'ai bien regardé le valeurs dans ma tabe, et il n'y a pas d'espace... Quequ'un a-t-il une autre idée ?
    En tous cas merci pour vos réponses !

  5. #5
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    et ça, ça dit quoi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PARAMETERS dte_deb DateTime, dte_fin DateTime, [c-rg] Text ( 255 ); 
    SELECT '-' & InfosRole & '-' AS [zone], Count(NumQuest) AS nb 
    FROM QuestSatis 
    WHERE QuestSatis.Date Between [dte_deb] And [dte_fin] AND ProPart ='Particulier' AND ClicRG = [c-rg]
    GROUP BY InfosRole;

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    merci Kloun,mais ça donne toujours la même chose (avec des - en plus) :

    zone nb
    -- 1
    -- 2
    -bien- 5
    J'ai vraiment du mal à comprendre d'où ça vient, cette histoire !

  7. #7
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Dernier test, après j'abandonne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PARAMETERS dte_deb DateTime, dte_fin DateTime, [c-rg] Text ( 255 ); 
    SELECT '-' & nz(InfosRole, "Vide") & '-' AS [zone], Count(NumQuest) AS nb 
    FROM QuestSatis 
    WHERE QuestSatis.Date Between [dte_deb] And [dte_fin] AND ProPart ='Particulier' AND ClicRG = [c-rg] 
    GROUP BY '-' & nz(InfosRole, "Vide") & '-';

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    Merci Kloun, là ça bouge !
    Voilà le résultat :
    zone nb
    -Vide- 1
    -- 2
    -bien- 5
    Je ne comprends ce que tu m'as fait faire, mais là on a quelqe chose de différent...

  9. #9
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Dans un cas tu as null (cas 1), dans l'autre cas, tu as "" (cas 2)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PARAMETERS dte_deb DateTime, dte_fin DateTime, [c-rg] Text ( 255 ); 
    SELECT nz(InfosRole, "")  AS [zone], Count(NumQuest) AS nb 
    FROM QuestSatis 
    WHERE QuestSatis.Date Between [dte_deb] And [dte_fin] AND ProPart ='Particulier' AND ClicRG = [c-rg] 
    GROUP BY nz(InfosRole, "");

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    ok merci de ta réponse et de ton aide.
    Dernière chose : comment faire pour regrouper les deux ? et donc avoir :
    zone nb
    3
    bien 5
    Merci d'avance à ceux qui savent !

  11. #11
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 183
    Points : 1 362
    Points
    1 362
    Par défaut
    Le dernier code que j'ai donné ne fait pas le regroupement ?

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    honte sur moi, je n'avais pas vu le code que tu avais mis, j'avais juste vu ta réponse !
    Effectivement, ton code fonctionne !!! MERCI !

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

Discussions similaires

  1. Regroupement dans une requete: concatener
    Par epistol dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/02/2007, 10h10
  2. regroupement dans une requete
    Par Renardo dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 03/02/2007, 09h37
  3. Somme dans une requete avec regroupement
    Par louroulou dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/07/2006, 21h20
  4. Regroupement par tranche dans une requete SQL (MS SQL)
    Par AODRENN dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 21/03/2006, 13h21
  5. Réponses: 6
    Dernier message: 09/02/2006, 19h00

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