Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2006, 17h05   #1
Membre confirmé
 
Inscription : septembre 2004
Messages : 519
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 519
Points : 257
Points : 257
Par défaut trouver le bon SELECT

bonjour,

J'ai 3 tables:
table_1
IDquestion | IDreponse | IDusr
INT | INT | INT
clef primaire est sur l'assocation des 3 colonnes.
table_2
IDquestion | IDreponse | intituléRep
INT | INT | VARCHAR(100)
clef primaire est sur l'assocation des 2 premieres colonnes.
table_3
IDquestion | intituléQuest
INT | VARCHAR(100)
clef primaire est sur IDquestion.
un usr peut repondre a une question. il y a 3 reponses possibles par questions et 2 questions en tout. (c'est un ex. en fait, il y a plus de questions et de reponses)
Un usr peut choisir de 0 a 3 reponses par questions.
un enregistrement type de table_1 est: 2, 3, 89
Le usr 89 a choisi la 3ieme reponse a la question 2.

Dans la table_2, je stock les intitulés des réponses.
Dans la table_3, je stock les intitulés des questions.

Je souhaite sortir un tableau de la forme:
-------|--Rep 1 1--|--Rep 1 2--|--Rep 1 3--|--Rep 2 1--|--Rep 2 1--|--Rep 2 1--|
usr 1--|-----0-----|-----1-----|-----0-----|-----1-----|-----0-----|-----1-----|
usr 2--|-----1-----|-----1-----|-----0-----|-----0-----|-----1-----|-----1-----|

"Rep 1 3" veuillant dire : reponse 3 à la question 1.

je me debats avec des jointures et des groupage pour tenter d'avoir ca, mais sans succes (je suis debutant).

Est-ce que qqu'un peut m'aider ? ou au moins me donner une piste
merci!
bibile est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2006, 17h43   #2
Membre habitué
 
Inscription : juillet 2004
Messages : 140
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juillet 2004
Messages : 140
Points : 149
Points : 149
Salut,

Je pense que tu ne prend pas le problème du bon côté,

le SQL n'est pas fait pour faire de l'affichage de donnée.

Il faut que tu remonte tes données utiles en SQL puis que tu les mettent en forme dans l'application ou le site web qui exploite les données
mdevlieg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2006, 18h02   #3
Membre confirmé
 
Inscription : septembre 2004
Messages : 519
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 519
Points : 257
Points : 257
oui, c'est la solution que je dvp actuellement.
mais si il y avait une bonne requete pour faire le boulot coté mySQL sans prendre trop de temps, j'etais preneur !
comme je suis debutant, j'avais peur d'etre passé a cote d'une bonne solution.

merci pour ta reponse !
bibile est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/07/2006, 19h45   #4
Rédacteur
 
Avatar de Biglo
 
Inscription : juillet 2002
Messages : 537
Détails du profil
Informations personnelles :
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : juillet 2002
Messages : 537
Points : 561
Points : 561
C'est vrai que dans ce cas, il vaut mieux d'abord faire un SELECT sur les réponses possibles => afficher les colonnes.

Puis faire un SELECT sur les utilisateurs : pour chaque utilisateur, faire un select sur ses réponses => mettre des 0 et des 1 où il le faut.
Biglo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h13.


 
 
 
 
Partenaires

Hébergement Web