Bonsoir,
voilà plusieurs fois que je rencontre un problème pour aller chercher mes informations dans une table.
J'ai une base mysql contenant :
- une table offres
- une table vehicules
- une table options
puis des tables faisant la liaisons entre la table offres et les autres :
- une table liaisons_offres_vehicules
- une table liaisons_offres_options
j'ai organisé ma base ainsi parce qu'il peut y avoir plusieurs véhicules et options par offre.
Maintenant je bloque au niveau de ma requete....
J'aimerai avoir la liste de mes offres, les infos des véhicules et des options par offre en le moins de requetes possibles...
Code :
- SELECT o.*
- FROM vehicules v
- LEFT JOIN liaisons_offres_vehicules lov
- ON lov.id_vehicule = v.id
- LEFT JOIN offres o
- ON o.id = lov.id_offre
- LEFT JOIN liaisons_offres_options loo
- ON loo.id_offre = o.id
- LEFT JOIN options op
- ON loo.id_option = op.id
- WHERE v.marque LIKE 'pigeot'
- ORDER BY o.prix ASC
|
ici je suis parti de la table vehicules, puisque ma recherche est basée sur une marque de véhicule.
Bien évidement, cette requete me retourne plus de lignes que d'offres...
En gros, là je suis perdu.
Donc : Comment feriez-vous pour que, pour chaque offre, vous ayez toutes les options et tous les véhicules ?
J'espère avoir été clair....
Message édité par papanoramix le 28-02-2008 à 22:14:03