sql >> Base de Datos >  >> RDS >> Mysql

No se utiliza el índice compuesto de MySQL

Respuesta corta:podría usar el índice de manera más efectiva aquí si su clave fuera (código de cuenta, fecha de llamada) en lugar de (fecha de llamada, código de cuenta).

La mejor manera de entender el problema es pensar en las claves de varias columnas como una concatenación de las diferentes columnas. Como ejemplo, si la columna 1 tuviera valores 'A,B,C,D' y la columna 2 'W,X,Y,Z', construiría un índice en 'A-W, B-X, C-Y, D-Z', etc. y colocaría todos de aquellos en un árbol B.

Para hacer una consulta de rango, busque el primer sucesor del extremo inferior del rango e itere hasta que exceda el rango superior. Esto significa que solo puede usar el índice de manera efectiva para realizar una consulta de rango en un sufijo de la clave.