Bonjour tout le monde, j'ai une question qui me tarone l'esprit:
J'ai une requête SQL qui est la suivante:
public function getThreads($id) {
$g = $this->db->fetchArray($this->db->prepare('SELECT t.*, u.name as creator, p.name as answerer, a.time as created from procms_thread t LEFT JOIN procms_users u ON u.id = t.user_id LEFT JOIN procms_answer a ON a.thread_id = t.id LEFT JOIN procms_users p ON p.id = a.user_id WHERE t.forum_id = ? LIMIT 10', [$id]));
return $g;
}
On peut voir 3 LEFT JOIN, et un LIMIT à la fin que je voudrais qu'il limit uniquement les procms_thread récupérés. Ensuite je voudrais un autre limit dans la requête pour limiter les procms_answer trouvées....
Cela est-il possible? J'ai cherché sur internet mais je n'ai pas trouvé ce qui correspond à ma demande.
Si quelqu'un serait m'aider, ce serait sympa ! :)
Salut..
SELECT t.*, u.name as creator, p.name as answerer, a.time as created
FROM procms_thread t
LEFT JOIN procms_users u ON u.id = t.user_id
LEFT JOIN procms_answer a ON a.thread_id = t.id
LEFT JOIN procms_users p ON p.id = a.user_id
WHERE t.forum_id = ?
LIMIT 10
.. là c'est déjà plus lisible..
Tu es sur que c'est un LEFT JOIN que tu veux faire et pas une autre jointure SQL ?