Joindre deux tables

Par ToinouPHP, il y a 4 ans


Bonjour à tous, comment améliorer cette requète :

$dataPhoto = $bdd->prepare("SELECT * FROM photos, likes WHERE photos.id_photo = likes.id_photo ORDER BY likes.id DESC LIMIT 1");

Parce que ça fonctionne, mais le temps de chargement de la page est multiplié par 10.

1 réponse

quenti77, il y a 4 ans

Hello,

Déjà plutôt que de choisir les tables directement, tu peux passer par un FROM + INNER JOIN
Aussi tu peux mettre les champs que tu as besoin uniquement plutôt que tous les champs

SELECT p.id_photos, l.id FROM photos AS p --Je créé un alias de la table 'photos' qui a comme nom 'p' INNER JOIN likes AS l on l.id_photo = p.id_photo ORDER BY l.id DESC LIMIT 1

Enfin vérifie bien tes index des tables photos et likes