|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : mars 2011 Messages : 8 ![]() |
Bonsoir,
Je ronge un os... Je réalise actuellement un module sur un logiciel existant, je ne peux donc modifier la structure de la base. La table à laquelle j'accède à la structure suivante : Code :
ATTRIBUTS(#id, id_article, nom_attribut, valeur_attribut) Un article a plusieurs attributs. Mon but est de proposer à l'utilisateur des listes de valeurs à sélectionner pour chaque attributs. Les listes doivent être dynamiques. Si l'utilisateur a choisi une valeur dans une première liste, la seconde liste (second attribut) ne doit proposer uniquement les valeurs pour lesquelles la combinaison existe. Exemple dans la table : Code :
Si je choisi la valeur 1 pour l'attribut attr1, dans la seconde liste je dois avoir : Pas compliqué vous me direz : Code :
Mais le gros soucis c'est que mon exemple se base sur 2 attributs différents, or en réalité il peut y en avoir bien plus. Et je ne sais pas à l'avance combien. Et je ne suis pas sur que ça soit très efficace d'imbriquer et d'imbriquer encore des requêtes... Surtout qu'elle sera soumise à bonne charge. Existe-t'il un moyen plus propre d'obtenir ce résultat sans modifier la structure de la table ? Je sèche ... Merci d'avance. |
||||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Responsable de service informatique Inscription : janvier 2009 Messages : 1 081 ![]() |
Bonjour,
Tu peux le faire en construisant dynamiquement la requête: Code SQL :
Pour ce qui est de la performance, avec les bons indexes ça doit le faire. Tatayo. |
||
|
|
10
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 8 ![]() |
D'accord, donc une auto-jointure à construire dynamiquement. Je vais donc prendre cette solution.
Merci beaucoup pour ta réponse ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com