J'ai une requête avec une clause ORDER BY qui utilise une colonne qui est la dernière colonne d'un index utilisé dans la clause WHERE, essentiellement de la forme:
SELECT
cols
FROM
tables
WHERE
col_1 = x
AND col_2 = y
AND col_3 = z
ORDER BY col_4
et l'index est créé sur les colonnes (col_1, col_2, col_3, col_4) dans cet ordre.
Lorsque je profile la requête, plus de 99% du temps est passé dans l'état "Résultat du tri". col_4 est une colonne d'horodatage si cela fait une différence. Je comprends que ORDER BY ne peut utiliser un index que dans certaines circonstances, mais je suis toujours un peu perplexe quant au moment précis où l'optimiseur le fera.