Scénario en bref: une table avec plus de 16 millions d'enregistrements [2 Go de taille]. Plus le décalage LIMIT est élevé avec SELECT, plus la requête est lente lorsque vous utilisez ORDER BY * primary_key *
Alors
SELECT * FROM large ORDER BY `id` LIMIT 0, 30
prend bien moins que
SELECT * FROM large ORDER BY `id` LIMIT 10000, 30
Cela ne commande que 30 disques et de toute façon. Ce n'est donc pas la surcharge de ORDER BY.
Désormais, lors de la récupération des 30 dernières lignes, cela prend environ 180 secondes. Comment puis-je optimiser cette simple requête?