Perencana, kemungkinan besar, tidak menggunakan limit
petunjuk untuk menghilangkan baris dari tabel pesanan sebelum bergabung. Jadi server harus melakukan join untuk semua baris dan kemudian mengembalikan hanya beberapa.
Coba ini:
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;
EDIT:Ini hanya akan berfungsi jika ada batasan yang menjamin bahwa baris yang sesuai ada di tabel Produk dan Orang.