|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : février 2011 Messages : 13 ![]() |
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 : Code :
quelqu'un pourrait il m'aider à me dépatouiller? Merci beaucoup |
||
|
|
00
|
|
|
#2 | ||
|
Membre habitué
![]() Inscription : février 2009 Messages : 114 ![]() |
Essaie:
Code :
__________________
bbl MeMa |
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : février 2011 Messages : 13 ![]() |
"L.id_prix" n'existe pas dans mon modele. (et je ne veux surtout pas qu'il existe, dans le concept, un livre ne doit pas avoir de prix. C'est le prix qui n'a pas de sens sans l'article. donc c'est le prix qui doit avoir un livre_id et pas le contraire si?)
et surtout j'ai besoin de renseignements de la même table. en fait ce que je veux c'est retrouver le fournisseur_id (ou un autre champ, n'importe lequel comme p.devise par exemple) la table fournisseur m'importe peu à vrai dire. En fait je veux joindre la table "prix" à ma table "livre" uniquement avec les enregistrements de prix mini. autrement dit passer de ca : T1, COND De JOINT , T2 L1, P1.livre_id = L1.id, P1.id, P1.prix, P1.devise , P1.fournisseur_id L1, P2.livre_id = L1.id, P2.id, P2.prix, P2.devise , P2.fournisseur_id L1, P3.livre_id = L1.id, P3.id, P3.prix, P3.devise , P3.fournisseur_id L2, P4.livre_id = L2.id, P4.id, P4.prix, P4.devise , P4.fournisseur_id L2, P5.livre_id = L2.id, P5.id, P5.prix, P5.devise , P5.fournisseur_id L2, P6.livre_id = L2.id, P6.id, P6.prix, P6.devise , P6.fournisseur_id L3, P7.livre_id = L3.id, P7.id, P7.prix, P4.devise , P7.fournisseur_id L3, P8.livre_id = L3.id, P8.id, P8.prix, P5.devise , P8.fournisseur_id L4, P9.livre_id = L4.id, P9.id, P9.prix, P6.devise , P9.fournisseur_id soit Code :
SELECT ... FROM livre L LEFT JOIN prix P ON P.livre_id=L.id T1 COND De JOINT T2 L1, P2.livre_id = L1.id, P2.id, P2.prix, P2.devise , P2.fournisseur_id (parce que P2 est le minimum entre P1 P2 et P3) L2, P6.livre_id = L2.id, P6.id, P6.prix, P6.devise , P6.fournisseur_id (parce que P6 est le minimum entre P4 P5 et P6) L3, P8.livre_id = L3.id, P8.id, P8.prix, P5.devise , P8.fournisseur_id (parce que P8 est le minimum entre P7 et P8) L4, P9.livre_id = L4.id, P9.id, P9.prix, P6.devise , P9.fournisseur_id (parce que P9 est tout seul donc minimum) j'espère être le plus clair possible mais ca n'est jamais évident d'expliquer le problème... Merci |
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : février 2011 Messages : 13 ![]() |
ok probleme résolu !
en fait ma première requête était bonne mais je ne sais pas pourquoi mes données chargées automatiquement (symfony) ne sont pas prises en compte... d'ailleurs si quelqu'un savait pourquoi ... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com