|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : février 2007 Messages : 13 ![]() |
salut,
Je suis une quiche en mysql c'est pas drôle.Ça, c'est fait ! Je souhaite afficher les catégories et sous catégories qui s'y réfèrent qui sont dans une table. Là, il me met "Subquery returns more than 1 row "... Code :
>uid = les id des catégories >les catégories de 1er niveau (qui ne sont pas dans des sous cat) ont un subcatof = 0 sinon c'est une sous cactégorie. Merci à tous pour votre aide Dernière modification par ced ; 08/03/2010 à 12h32. |
||
|
|
00
|
|
|
#2 | ||
![]() ![]() |
Il faut faire une auto-jointure.
Ca devrait donner un truc dans le genre : Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#3 |
![]() ![]() Cédric DuprezInscription : avril 2002 Messages : 3 778 ![]() |
Bonjour,
Bien sûr, l'auto-jointure ne ramène que le premier niveau de sous-catégorie. S'il y en a plusieurs, ça se complique et il faut faire appel à de la récursivité, ou alors revoir le modèle de données, comme expliqué dans cet excellent tutoriel : http://sqlpro.developpez.com/cours/arborescence/ ced
__________________
Rédacteur / Modérateur SGBD Mes tutoriels et la FAQ MySQL ---------------------------------------------------- Pensez aux balises code et au tag Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
|
|
|
00
|
|
|
#4 |
![]() ![]() |
La structure que tu donnes est celle que j'avais supposée.
As-tu essayé d'adapter ma requête à ta structure exacte ? Comme l'a dit ced, si tu n'as qu'un niveau de sous-catégorie, la requête fonctionnera. Si tu en as plus, ce sera plus compliqué ; il faut autant d'instance de la table qu'il y a de niveaux. Ou sinon passe à la représentation intervallaire, comme suggéré par ced.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#5 | |||||
|
Invité de passage
![]() Inscription : février 2007 Messages : 13 ![]() |
Citation:
j'ai pas saisi ta requete je compren pas bien ensuite comment affichir les résultats, genre echo de.. quoi ? j'ai essaillé de t1.nam ou cat et.. rien j'ai fais ça : Code PHP :
et ça m'affiche un truc débile genre uniquememnt la 1er cat.. c'est tout pffff
|
|||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com