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

Mi consulta MySql simple no usa índice

Supongo que tiene pocas filas en la tabla de 'comentarios', es por eso que MySQL está haciendo un escaneo completo de la tabla en lugar de usar el índice en su primera consulta. Está estimando que el costo de un escaneo completo de la tabla puede ser más bajo que primero hacer coincidir el índice y luego buscar las filas.

En su segunda consulta, está usando el índice porque es posible obtener todas las columnas de la consulta (la columna 'id') directamente del índice sin necesidad de buscar las filas de la tabla después de hacer coincidir el índice. Este es el significado de la información adicional "Uso del índice".

Pruebe si con un número significativo de filas en 'comentarios' MySQL todavía usa un escaneo completo, creo que sería un comportamiento extraño. De hecho, probé exactamente lo mismo en MySQL versión 5.1 y siempre usa el 'índice' incluso con pocas filas.