Optimisation de requêtes par jointure

Nouveau WRInaute
Bonjour,

Je galère depuis plusieurs jours ( ... ) pour optimiser un script de mp en voulant réduire 3 requêtes msqli en une seule.

Mes 3 tables :
table inbox : box_id, box_dest_id, box_status
table messages : msg_id, msg_expe_id, msg_sujet, msg_date
table users : user_id, user_login

En simplifiant, jusqu'à maintenant je commence par une première requête:
Code:
SELECT box_id FROM inbox WHERE box_dest_id=1 AND box_status=1
Puis une seconde
Code:
SELECT msg_expe_id, msg_sujet, msg_date FROM messages WHERE msg_id=box_id
et enfin la troisième
Code:
SELECT user_login FROM users WHERE user_id=msg_expe_id

Le tout pour obtenir : box_id, user_login, msg_sujet, msg_date

Je n'ai encore jamais codé de jointures. Et à vrai dire, je n'y pige pas encore grand chose !
J'ai bien vu INNER JOIN, LEFT JOIN, les Alias, etc mais je ne parviens pas à aligner la bonne requête pour tout réunir.

Si une bonne âme veut bien me l'écrire, je pourrais plus facilement optimiser le reste de mon site ;-)

Merci !
 
WRInaute accro
Tu peux builder ta query dans MySQL Workbench ou SQLYog, aussi simplement que de faire du MS Access... clic clic clic
 
Nouveau WRInaute
Merci,

Je ne connaissais pas, j'ai chargé et installé.
Mais mon hébergement ne m'autorise pas l'accès distant, et c'est là une véritable usine à gaz !
 
WRInaute occasionnel
Un peu dans ce style ?

Code:
SELECT box_id, user_login, msg_sujet, msg_date FROM inbox LEFT JOIN message ON inbox.box_id=message.msg_id LEFT JOIN users ON messages.msg_expe_id=users.user_id WHERE box_dest_id=1 AND box_status=1
 
Nouveau WRInaute
Excellentissime chava,
Exact, un peu beaucoup dans le style. Et du coup, appliqué au cas qui me préoccupe, je cerne nettement mieux le sujet des jointures JOIN.
Grand merci ;-)
 
Discussions similaires
Haut