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 MySQL Discussion :

Double GROUP BY ?


Sujet :

Requêtes MySQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 36
    Points
    36
    Par défaut Double GROUP BY ?
    Bonjour à tous,
    je veux compter le nombre de structure par communes, jusque là pas de problème, mais je veux aussi la répartition par type de structure... est ce que c'est possible en une seule requête parce que là je sèche...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT COUNT(t1.id_structure) AS somme, 
    		t3.ville, GROUP_CONCAT(t4.genre) AS type_structure 
    		FROM tbl_structure AS t1 
    		INNER JOIN tbl_adherent AS t2 ON t1.id_adherent = t2.id_adherent 
    		INNER JOIN tbl_adresse AS t3 ON t1.id_structure = t3.id_structure 
    		INNER JOIN tbl_genre AS t4 ON t1.genre = t4.id_genre 
    		WHERE t2.actif > 0 GROUP BY t3.ville ORDER BY somme DESC
    Pour l'instant j'utilise GROUP_CONCAT mais c'est pas vraiment une liste que je veux, plutôt une répartition chiffré du type
    73 structures sur la commune "Ville" (2 hôtels, 3 restaurants, 45 locations, 23 gites)
    Quelqu'un peut il m'aider SVP ?
    Merci d'avance ++

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Si le nombre de genres de structures est variable, tu peux t'inspirer de mon article afférent à l'émulation d'un tableau croisé dynamique avec PHP et MySQL.
    Le lien est dans ma signature.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  3. #3
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    plus simplement, le nombre de structure est fixé définitivement, tu peux faire les calculs sur les agrégats dans une requete imbriquée et dans la requete principale tu concatènes le tout.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT concat( nombreHotel+nombreResto , "dans la ville ", ville,"  ( ", nombreHotel,"...
    FROM 
    (
    SELECT 
     ville,
     SUM ( if ( typeStructure = "hotel", 1,0 ) ) as  nombreHotel
      ...
    GROUP BY ville
    ) as  tmp
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

Discussions similaires

  1. Double jointure avec double group by
    Par annebe dans le forum DB2
    Réponses: 0
    Dernier message: 28/01/2013, 14h52
  2. DOUBLE GROUP BY
    Par bernardcyril dans le forum Requêtes
    Réponses: 0
    Dernier message: 04/09/2012, 19h34
  3. "double" group by
    Par yanice dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/06/2010, 15h02
  4. Requete avec Group By et "double requete"
    Par devsqlmet dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/11/2008, 09h33
  5. [VB] Possibilité de créer un double groupe de contrôles ?
    Par Laialexela dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/12/2005, 09h03

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