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

Requêtes et SQL. Discussion :

Compter des enregistrements selon 2 critères sur 2 champs différents [AC-2010]


Sujet :

Requêtes et SQL.

  1. #1
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 440
    Points : 1 192
    Points
    1 192
    Par défaut Compter des enregistrements selon 2 critères sur 2 champs différents
    Bonjour

    Je souhaite compter des enregistrements selon différents critères : quand il y en a un, pas de souci, tout fonctionne.
    Par contre, j'aurais besoin d'en compter selon 2 critères issues de 2 champs différents (de la même table).
    J'ai testé ce code ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbM12Masc: CpteDom("[Genre] & [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin'" Et "[Datenaissance]>'01/01/2002'")
    Elle "fonctionne" car il n'y a pas d'erreur mais le problème est qu'elle ne compte pas les enregistrements selon les 2 critères (masculin et année de naissance supérieure au 01/01/2002), elle compte tous les enregistrements.

    J'ai essayé de jouer sur la position des guillemets : constat identique !

    Avez-vous une idée d'où vient mon erreur ?
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 345
    Points : 23 805
    Points
    23 805
    Par défaut
    Bonjour.

    Essaye :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CpteDom("[Genre] & [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin'" and "[Datenaissance]>'01/01/2002'")
    Je ne sais pas pourquoi mais quand on compose des critères dans une chaîne il faut toujours utiliser les opérateurs en anglais.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 440
    Points : 1 192
    Points
    1 192
    Par défaut
    Bonjour

    Toujours pareil : de toute façon, une fois que je valide la saisie, Access change automatiquement le AND en ET
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  4. #4
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    Juillet 2012
    Messages
    9 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9 171
    Points : 84 928
    Points
    84 928
    Billets dans le blog
    15
    Par défaut


    Ce genre de problème est réglé ici : http://www.developpez.net/forums/d12...s/#post6747937
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  5. #5
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 440
    Points : 1 192
    Points
    1 192
    Par défaut
    Bonsoir

    A l'aide de la réponse proposée, j'ai donc testé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CpteDom("[Genre] + [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin'" "ET[Datenaissance]>'01/01/1002'")
    qui me renvoie une boite de dialogue d'erreur "la syntaxe de l'expression entrée n'est pas valide"

    SI j'enlève les guillemets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CpteDom("[Genre] + [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin' ET [Datenaissance]>'01/01/1002'")
    j'ai une boite de dialogue "Inconnu" qui s'ouvre
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Date ====> entre # (de préférence utiliser le format "yyyy/mm/dd", en français "aaaa/mm/jj") ;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CpteDom("[Genre] + [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin' AND [Datenaissance]>#01/01/2002#")
    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  7. #7
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 440
    Points : 1 192
    Points
    1 192
    Par défaut
    Bonjour


    Pour tester le bon format pour les dates, j'ai fait l'essai en en demandant que selon l'année de naissance :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CpteDom("[Datenaissance]";"T_adherentformulaire";"[Datenaissance]>#01/01/2002#")
    il me renvoie bien le bon nombre d'enregistrements.

    J'ai testé la solution proposée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CpteDom("[Genre] + [Datenaissance]";"T_adherentformulaire";"[Genre]='Masculin' AND [Datenaissance]>#01/01/2002#")
    qui me renvoie la boîte de dialogue "Inconnu"

    Le problème réside donc dans la prise en compte des 2 critères : j'ai l'impression d'avoir testé toutes les positions des guillemets mais rien n'y fait
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  8. #8
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 440
    Points : 1 192
    Points
    1 192
    Par défaut
    Au hasard d'un essai, j'ai trouvé la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbM12Masc: CpteDom("[Datenaissance] & [Genre]";"T_adherentformulaire";"[Datenaissance]>#01/01/2002#" & "And [Genre]='Masculin'")
    Il faut rajouter le caractère & entre les 2 parties du critère et mettre le And entre les guillemets.

    D'ailleurs, un truc bizzare, le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NbM12Masc: CpteDom("[Datenaissance] & [Genre]";"T_adherentformulaire";"[Datenaissance]>#01/01/2002#" & "And [Genre]='Masculin'")
    fonctionne également (je ne renseigne qu'un seul champ et pourtant mon critère porte sur 2 champs différents.

    Merci à tous celles et ceux qui m'ont aidé.
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

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

Discussions similaires

  1. Compter des enregistrements selon différents critères
    Par nlbmoi dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 10/07/2015, 08h58
  2. Réponses: 2
    Dernier message: 10/10/2013, 09h16
  3. Réponses: 1
    Dernier message: 04/10/2013, 15h40
  4. Réponses: 2
    Dernier message: 30/11/2007, 17h54
  5. Réponses: 1
    Dernier message: 30/03/2007, 08h44

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