De planner gebruikt hoogstwaarschijnlijk niet de limit
hint om rijen uit de besteltabel te verwijderen vóór de samenvoeging. Dus de server moet de join voor alle rijen doen en er dan maar een paar teruggeven.
Probeer dit:
select o.* from
(select * order order by id desc limit 100) o
inner join product p
on o.product_id=p.id
inner join person per
on o.person_id=per.id
order by o.id desc limit 100;
BEWERKEN:Dit werkt alleen als er een beperking is die garandeert dat overeenkomstige rijen aanwezig zijn in de tabellen Product en Persoon.