Bonjour,
Je crois que j'ai un gros souci avec les requêtes jointes.
J'ai trois tables à joindre.
TABLE 1 contient un id et les entrées suivantes :
- Apple
- Sony
- Nokia
- Samsung
- HTC
- Blackberry
TABLE 2 contient un id, l'id de la marque, l'id du type de portable (voir table 3) et les entrées suivantes :
- iPhone 3G
- iPhone 3GS
- iPhone 3GS NB
- iPhone 4G
- N63
- 3710
- etc.
TABLE 3 contient un id et :
- Slide
- Monobloc
- Clapet
Je les joints comment ces trois tables ?
Car je fais
Code :
- SELECT blabla FROM table1 LEFT JOIN table2 ON table2.marque = table1.id LEFT JOIN table3 ON table3.id = table2.type
|
Et quand je veux un modèle en particulier :
Code :
- SELECT blabla FROM table1 LEFT JOIN table2 ON table2.marque = table1.id LEFT JOIN table3 ON table3.id = table2.type WHERE table1.marque = 'Apple' AND table2.modele = 'iPhone 3G' AND table3.type = 'Monobloc'
|
Je fais une requête avec autant de conditions au cas par exemple où il y aurait deux versions de ce téléphone : l'une monobloc et l'autre à clapet par exemple.
Et bien ça ne fonctionne pas Le dernier critère fait tout planter. En gros, si je le met pas, tout fonctionne, si je le met, je récupère que la marque.
Ma syntaxe n'est pas bonne ?
Un grand merci à vous