Como se describe aquí en los documentos de MySQL :
La columna filtrada indica un porcentaje estimado de filas de la tabla que serán filtradas por la condición de la tabla. Es decir, las filas muestran el número estimado de filas examinadas y las filas × filtradas / 100 muestran el número de filas que se unirán a las tablas anteriores. Antes de MySQL 5.7.3, esta columna se muestra si usa EXPLAIN EXTENDED. A partir de MySQL 5.7.3, la salida extendida está habilitada de forma predeterminada y la palabra clave EXTENDED es innecesaria.
Aún no lo entiendo. ¿Cuál es el significado de "filtrado" aquí? ¿Qué información podemos obtener de esta columna?
Por ejemplo, cuando comienzo a consultar, algunas consultas mostrarán 100, y otras mostrarán 18 o menos de 100.
+-------------+-------+--------+---------+---------+------+----------+
| select_type | table | type | key | key_len | rows | filtered |
+-------------+-------+--------+---------+---------+------+----------+
| PRIMARY | a | range | search | 4 | 174 | 18.00 | <--
| PRIMARY | b | eq_ref | PRIMARY | 4 | 1 | 100.00 |
| PRIMARY | c | ALL | PRIMARY | 4 | 1 | 100.00 |
¿Cuál es el punto principal que podemos concluir de este valor?
¿Dice que la columna filtró solo el 18%? ¿O si cuanto más bajo es el puntaje, más bueno es el índice / consulta?
Estoy usando MySQL 5.7
type
yextra
(que es un arte en sí mismo); podrías vivir sinfiltered
, pero no sintype
.