Page 1 sur 1

La critère LIMIT est-il compatible avec LEFT JOIN ?

Posté : 01 avr. 2014, 19:33
par Stegue
Bonjour,

Tout est dans le titre. :)

Merci.

Re: La critère LIMIT est-il compatible avec LEFT JOIN ?

Posté : 01 avr. 2014, 20:51
par xTG
Je ne vois pas pourquoi il ne le serait pas.
Le left join est appliqué puis le limit sur le résultat du left join.

Re: La critère LIMIT est-il compatible avec LEFT JOIN ?

Posté : 01 avr. 2014, 21:43
par Stegue
Dans ma requête, je limite le nombre de question à 1 mais ça me limite le nombre de réponse à 1 également. :?

Re: La critère LIMIT est-il compatible avec LEFT JOIN ?

Posté : 02 avr. 2014, 19:50
par xTG
C'est.... Normal !

Tu fais une jointure entre deux tables.
Tu récupères donc X questions combinées à Y réponses => X*Y enregistrements.
Puis tu fais un LIMIT 1 => ne récupérer qu'un seul enregistrement.

Il faut faire une sous-requête, ou bien deux requêtes pour ce que tu veux faire.
Car le LIMIT ne doit être fait que sur la table question.
SELECT reponse.id FROM reponse WHERE reponse.question_id = (SELECT question.id FROM question LIMIT 1)
SELECT question.id FROM question LIMIT 1
SELECT reponse.id FROM reponse WHERE reponse.question_id = $question['id']
N.B : ce n'est pas du code qui s'exécute dans le second cas, je n'ai écris que le principe.

Re: La critère LIMIT est-il compatible avec LEFT JOIN ?

Posté : 04 avr. 2014, 13:23
par Stegue
Ok ça marche, avec 2 requêtes. Merci beaucoup xTG.