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 :

Count et group by multiple


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 141
    Points : 92
    Points
    92
    Par défaut Count et group by multiple
    Bonjour,

    j'ai une table qui contient des personnes.
    Cette table gère essentiellement la nationalité et le sexe
    id (int)
    nationalite (smallint) (id d'une autre table)
    sexe (enum 'H','F')

    J'ai besoin, en une requete de connaitre le nombre de différentes nationalités présents dans ma base en fonction du sexe

    je m'explique :
    je sais que j'ai 30 nationalités possibles et 2 sexes possibles (H et F)
    j'ai besoin de vérifier que j'ai au moins 1 personne de chaque nationalité et de chaque sexe . Ici je dois donc vérifier que j'ai au moins 60 personnes "différentes" (1 H et 1 F pour chaque pays).

    J'ai tenté de faire quelque chose du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT(id) FROM maTable GROUP BY nationalite, sexe
    or je me retrouve avec un résultat de plusieurs lignes.

    Je ne sais pas trop comment tourner cette requête

    merci d'avance pour votre aide

  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 399
    Points
    28 399
    Par défaut
    Dans un premier temps, la requête suivante te donnera des informations exploitables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT  COUNT(id)
        ,   nationalite
        ,   sexe
    FROM    maTable 
    GROUP BY nationalite
        ,   sexe

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 141
    Points : 92
    Points
    92
    Par défaut
    effectivement je n'ai pas pensé à faire simplement une boucle et compter les éléments !

    Du coup ce n'est pas forcément très grave si je n'ai pas le résultat avec une requête.

    Merci beaucoup

  4. #4
    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 399
    Points
    28 399
    Par défaut
    Ensuite, si tu veux connaitre les pays où il n'y a pas de personnes des deux sexes dans la table, cette requête te donnera directement le résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT  nationalite
    FROM    maTable 
    GROUP BY nationalite
    HAVING  COUNT(DISTINCT sexe) = 1

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/10/2007, 16h36
  2. [requete] Probleme de COUNT() et GROUP BY
    Par cadoudal56 dans le forum Requêtes
    Réponses: 6
    Dernier message: 04/12/2006, 19h23
  3. problème count et group by
    Par zulkifli dans le forum Requêtes
    Réponses: 3
    Dernier message: 24/11/2006, 04h53
  4. Requête récalcitrante avec un tri par COUNT sans GROUP BY
    Par Ancalagon77 dans le forum Requêtes
    Réponses: 1
    Dernier message: 05/10/2006, 14h27
  5. Pb de COUNT et GROUP BY simple mais sans requête imbriquées
    Par vanquish dans le forum Langage SQL
    Réponses: 3
    Dernier message: 22/10/2004, 09h45

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