Ho una query con una clausola ORDER BY che utilizza una colonna che è l'ultima colonna di un indice che viene utilizzata nella clausola WHERE, essenzialmente nella forma:
SELECT
cols
FROM
tables
WHERE
col_1 = x
AND col_2 = y
AND col_3 = z
ORDER BY col_4
e l'indice viene creato su colonne (col_1, col_2, col_3, col_4) in questo ordine.
Quando profilo la query oltre il 99% del tempo è trascorso nello stato "Risultato dell'ordinamento". col_4 è una colonna timestamp se questo fa la differenza. Comprendo che ORDER BY può utilizzare un indice solo in determinate circostanze, ma sono ancora un po 'sconcertato su quando esattamente l'ottimizzatore lo farebbe.