Les cinq bugs les plus récents
Échauffement · indexing, primary-key, limit
Étant donnée une table bugs(id, token, title, category, device, reported_at, created_at, updated_at)
d'environ 10 millions de lignes, listez les 5 bugs créés le plus récemment, du plus récent au
plus ancien. Renvoyez les colonnes (id, title).
Colonnes attendues
id, title
Indices
Indice 1 : created_at est-il indexé ?
Exécutez SHOW INDEX FROM bugs. created_at n'apparaît dans aucun index, donc ORDER BY created_at DESC doit lire et trier les 10M de lignes avant de renvoyer les 5 premières.
Indice 2 : l'ordre propre de la table
InnoDB stocke les lignes dans l'ordre de la clé primaire. Regardez les premières lignes : created_at croît avec id. Quel ORDER BY permet à MySQL de lire les 5 dernières entrées de la clé primaire puis de s'arrêter ?