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 :

ORDER BY plusieurs SELECT


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Par défaut ORDER BY plusieurs SELECT
    Bonjour,

    Je maitrise encore pas trop les unions et les requêtes imbriquées, et je suppose que ma solution se trouve par là

    Ma question :
    Admettons que j'ai les tables suivantes :
    - T1 avec une clé T1_id.
    - T2 avec comme clé T2_id et clé étrangère T1_id.

    Dans la même requête je voudrais pouvoir récupérer les champs de ma table T1, et aussi le nombre d'enregistrements dans T2 avec une valeur donnée de T1_id.


    En gros je voudrais réunir ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT T1.*
      FROM T1
      WHERE T1_id = x
    et ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT count(T2_id) as nb_t2
      FROM T2
      WHERE T1_id = x
    Et j'aimerais dans mon ORDER BY, soit ordonner par un champ de la table T1, mais aussi avoir la possibilité d'ordonner la première requête par le résultat de la deuxième, donc par "nb_t2".

    Pour être plus direct : Je voudrais la liste des enregistrements de T1 avec pour chacun d'eux le nombre de T1_id dans T2, en ordonnant par nb_t2.

    Merci,

    Benjamin.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 142
    Par défaut
    Un truc de ce genre devrait marcher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT T1.T1_id, count(T2_id) AS nb_t2
    FROM T1
    INNER JOIN T2 ON T1.T1_id = T2.T1_id
    WHERE T1_id = x
    GROUP BY T1.T1_id
    ORDER BY nb_t2
    Par contre si tu veux sélectionner d'autres champs de T1, alors il faudra que tu les rajoutes dans le GROUP BY.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Par défaut
    Merci, en fait j'ai trouvé la solution tout seul juste après avoir posté (le truc bête qui arrive souvent). J'ai fait comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT count(T2.T2_id) as nbT2, membres.*
      FROM T2
        RIGHT JOIN T1 ON (T2.T1_id=T1.T1_id)
        INNER JOIN T3 ON (T2.T3_id=T3.T3_id)
        INNER JOIN T4 ON (T2.T4_id=T4.T4_id)
      GROUP BY T1.T1_id
      ORDER BY nbT2
    Merci pour la réponse !

    Benjamin.

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

Discussions similaires

  1. Procédure stockée avec plusieurs SELECT
    Par amatollah dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/03/2006, 21h26
  2. Evenement Jlist plusieurs selection
    Par Blast dans le forum Composants
    Réponses: 1
    Dernier message: 16/03/2006, 17h44
  3. plusieurs selections selon sur colonne different critere
    Par richton95 dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/01/2006, 17h25
  4. order par plusieurs champs
    Par Death83 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 24/11/2005, 10h12
  5. Plusieurs SELECT dans l'ouverture d'une connection
    Par pmboutteau dans le forum ASP
    Réponses: 6
    Dernier message: 01/04/2005, 11h09

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