Bonjour,
Donc, je suis en train de mettre en place une application dont le but principal sera d'effectuer des recherches multicritères sur mysql (4.1).
La question que je me pose, vu le nombre relativement important de critères (plus de 15) est la suivante :
Vaut il mieux définir une table "element", avec une colonne par critère (element_id, inof1, info2, .., infoN, critere1, critere2 ... critereN) mise en index, ce qui implique pas mal d'index sur la table (un par critère), ou faire une table par critère (table critereN : element_id, critereN) et sortir les résultats avec un left join sur la table contenant les informations de l'élément, au risque d'avoir un nombre important de join?
J'ajoute que les recherches seront majoritairement multicritères, et pour une bonne partie avec la majorité des critères, il y aura relativement peu d'insert comparé aux select.
![]()
Partager