Bonjour à tous
voici mon problème
Pour faire simple, je vend au détail des livres proposés par des fournisseurs.
J'ai donc une table livre, une fournisseur et une prix
livre a 2 colonnes : id, titre
fournisseur a 2 colonnes : id, nom
prix a 4 colonnes: id, prix, livre_id, fournisseur_id,
je voudrais que ma requete retourne pour tous mes livres le prix minimum ainsi que le fournisseur correspondant à ce prix soit un truc du genre
livre id | livre titre | prix | fournisseur_id
--- 1 --- da vinci -- 33 ---- 7
--- 2 --- la marq ---12 ---- 4
--- 3 --- indignez -- 50 ---- 1
...
voici mon code :
Ce code me renvoie NULL pour les colonnes p.prix et p.fournisseur_id tout le temps SAUF pour le livre qui a effectivement le prix minimum dans l'absolu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT L.id , L.titre , p.prix , p.fournisseur_id FROM livre L LEFT JOIN prix p ON (p.livre_id = L.id AND (p.prix = (SELECT MIN(prix) FROM prix WHERE prix.livre_id = L.id)) GROUP BY L.id
quelqu'un pourrait il m'aider à me dépatouiller?
Merci beaucoup
Partager