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

PHP & Base de données Discussion :

Requête "classe, etudiant et couleur"


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Par défaut Requête "classe, etudiant et couleur"
    Bonjour à tous,

    je pense que mon tritre est loin d'être explicite , je m'explique :
    - j'ai une table classe avec comme champs id_classe, classe_idetudiant ;
    - j'ai une autre table etudiant ayant comme champs id_etudiant, etudiant_idcouleur ;
    - j'ai une dernière table couleur ayant comme champs id_couleur, couleur_nom.

    Comment faire une requête qui affiche distinctement toutes les couleurs de tous les étudiants d'une classe ?

    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    je crois q la relation entre classe et etudiant n'est pas bonne (si je peux me permettre).
    je me dis que comme règle de gestion c'est : un etudiant une et une seule classe et classe contient bcp d'etudiant.
    Partant de cette base, on a

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    classe (id_classe, nom_classe)
    etudiant(id_etudiant,id_classe,id_couleur)
    couleur(id_couleur,nom_couleur)

    d'ou la requete

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select distinct c.id_classe,c.nom_classe from couleur c, etudiant e, classe cl
    where c.id_couleur=e.id_couleur and cl.id_classe=e.id_classe
    group by c.id_classe, nom_classe

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Par défaut
    Re,

    j'ai repensé à la table et effectivement elle est loin d'être bonne, sachant que ce sont des tables fictives que je me suis inventé.
    Je suis d'accord sur la relation classe et etudiant.
    Faut aussi que je précise qu'on ait pour un etudiant 0 à n couleur.

    Cependant, j'ai essayé ton code avec la table pour la requête mais il y a une erreur (si je peux me permettre ) sur c.id_classe, c.nom_classe que je pense être cl.id_classe et cl.nom_classe ; cependant après ce changement il ne retourne pas distinctement toutes les couleurs mais les id_classe et les nom_classe... ce qui me parrait plus ou moins logique.

    J'aurais proposé pour commencer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT DISTINCT nom_couleur 
    FROM couleur, etudiant, classe
    WHERE
    Mais la suite je ne vois pas très bien, de plus le GROUP BY reste flou pour moi, ...

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    bjr! est ce q tu peux afficher le code qui ne marche pas?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT DISTINCT cl.id_classe,cl.nom_classe FROM couleur c, etudiant e, classe cl
    WHERE c.id_couleur=e.id_couleur AND cl.id_classe=e.id_classe
    GROUP BY cl.id_classe, nom_classe

Discussions similaires

  1. [Toutes versions] Requête SQL avec Simples et Doubles Quotes
    Par Roums dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 25/03/2010, 10h00
  2. Requête sur classe mère
    Par Galak extra dans le forum Hibernate
    Réponses: 7
    Dernier message: 22/08/2008, 15h19
  3. [POO] Requête avec classe PHP
    Par krfa1 dans le forum Langage
    Réponses: 3
    Dernier message: 18/01/2007, 18h45
  4. [héritage] requête sur classe fille
    Par Galak extra dans le forum Hibernate
    Réponses: 3
    Dernier message: 25/08/2006, 10h30

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