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 :

requete avec left join et group by


Sujet :

Requêtes MySQL

  1. #1
    slc
    slc est déconnecté
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 36
    Points : 37
    Points
    37
    Par défaut [resolu] requete avec left join et group by
    bonjour j'ai un souci avec une requete mysql (les sous requetes ne sont pas gérer)

    Voici ma table (j'ai tous mis en int pour simplifier)
    pid : int
    topic_id : int
    new_topic : int


    ID Topic_id new_topic
    1 1 0
    2 1 1
    3 2 1
    4 2 0


    Je souhaite récuperer les pids des enregistrement dont la plus petit valeur (group by sur topic_id) a une valeur differente de 1.

    Ici l'enregistrement avec l'id 1 : le group by me ramene les id 1 et 3 et la condition m'elimine le 3.


    j'ai essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    select min(T1.pid) from ibf_posts T1
    left join ibf_posts T2 on T1.pid = T2.pid
    where T1.new_topic <> 1
    group by T1.topic_id
    mais ca me ramene les id 1 et 4 : le group by est appliquer apres la condition where

    et ca mais qui ne fonctionne pas mais 'logiquement' c'est plus pres de ce que je veux obtenir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select T1.pid from ibf_posts T1
    left join (ibf_posts T2 on T1.pid = min (T2.pid) group by T2.topic_id)
    where T1.new_topic <> 1
    En esperant avoir été assez clair

  2. #2
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    Je n'ai pas tout compris. Mais je vais essayer de t'aiguiller.

    Je te conseille te faire une recherche sur le mot clef having qui s'utilise en complément de group by.

    Par exemple, je veux le nom et la moyenne de chaque élève qui a moins de 5/10 de moyenne général donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT nom_eleve,avg(note_eleve) as moyenne
    from eleve,note
    where note.id_eleve=eleve.id_eleve
    group by nom_eleve
    having moyenne < 10
    Pour contre, pour améliorer la lisibilité de tes messages, nous te remercions d'utiliser les balises codes pour encadrer tes requêtes.
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

  3. #3
    slc
    slc est déconnecté
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 36
    Points : 37
    Points
    37
    Par défaut
    Merci pour l'info. Je vais voir ce que je peux en faire

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

Discussions similaires

  1. [MySQL] Requete avec LEFT JOIN et USING 2 conditions
    Par monlou dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 02/08/2010, 09h38
  2. Requete avec left join
    Par akabou dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 27/05/2010, 08h45
  3. Requete avec Left Join sous MySQL 4 et 5
    Par gpers dans le forum Requêtes
    Réponses: 3
    Dernier message: 11/05/2009, 18h04
  4. Réponses: 3
    Dernier message: 06/06/2007, 18h45
  5. [Access] Requête avec LEFT JOIN et 3 tables
    Par estelledany dans le forum Langage SQL
    Réponses: 1
    Dernier message: 07/06/2006, 13h27

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