|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mai 2010 Messages : 75 ![]() |
Bonjours Bonjours.
je voudrais savoir si c'est possible de faire un test WHERE sur une autre table ? Je m'explique, j'ai 3 tables, qui sont relier entre elle : Niveau , Exercice , Sequence : la table niveau contient des exercices qui contient des sequences... en gros j'arrive à récupérer le nombre d'exercice en faisant : Code :
Auriez vous une solution please ? |
||
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Gabriel MaletIngénieur développement logiciels Inscription : février 2011 Messages : 146 ![]() |
Salut,
Il me semble que ce que tu cherches correspond aux jointures en SQL non ? Code :
$sql = "SELECT COUNT(s.id_seq) AS nb FROM exercice AS e, sequence AS s, niveau AS n WHERE n.id_lvl = $id_lvl AND n.id_lvl = e.id_lvl AND e.id_exo = s.id_seq;" A noter qu'on peut tout aussi bien passer par les INNER JOIN.
__________________
« War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell |
|
|
10
|
|
|
#4 |
|
Invité de passage
![]() Inscription : mai 2010 Messages : 75 ![]() |
Merci a vous deux pour vos réponse
![]() J'ai compris a merveille le fonctionnement à l'aide de la ligne que tu m'as ZnhaarX j'arrive à récupérer toutes les séquences, mais j'ai encore deux petites questions a vous posez : Pour le moment j'arrive à récupérer le nombre de séquence total du niveau, mais comment faire pour récupérer le nombre de sequence de l'exercice 1, puis de l'exercice 2... ? et Comment faire pour récupérer les informations de la 1er ligne de ma table séquence, ensuite la 2eme, et la 3eme... jusqu'à qu'il n'y en ai plus ? |
|
|
00
|
|
|
#5 | ||
|
Membre éclairé
![]() Gabriel MaletIngénieur développement logiciels Inscription : février 2011 Messages : 146 ![]() |
Citation:
Après si tu veux faire une requête qui te retourne le nombre de séquence de chacun des exercice, en même temps tu peux utiliser UNION entre deux SELECT: Code :
$sql = "SELECT COUNT(s.id_seq) AS nb FROM exercice AS e, sequence AS s, niveau AS n WHERE n.id_lvl = $id_lvl AND e.id_exo = 1 AND n.id_lvl = e.id_lvl AND e.id_exo = s.id_seq UNION SELECT COUNT(s.id_seq) AS nb FROM exercice AS e, sequence AS s, niveau AS n WHERE n.id_lvl = $id_lvl AND e.id_exo = 2 AND n.id_lvl = e.id_lvl AND e.id_exo = s.id_seq "; Citation:
Tu veux sélectionner tous les enregistrements (lignes) de ta table séquence ? Dans ce cas là, un simple SELECT fera l'affaire: Après je sais pas si c'est ça que tu voulais faire...
__________________
« War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell |
||
|
|
10
|
|
|
#6 | |||
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2009 Messages : 37 ![]() |
Citation:
Code :
|
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com