Así que aquí es una tabla muy simple 'TBL':¿Por qué esta simple consulta de MySQL es tan lenta?
+---------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+---------------------+------+-----+---------+----------------+
| val | varchar(45) | YES | MUL | NULL | |
| id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
+---------+---------------------+------+-----+---------+----------------+
e índices para ello:
+--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| tbl | 0 | PRIMARY | 1 | id | A | 201826018 | NULL | NULL | | BTREE | |
| tbl | 1 | val | 1 | val | A | 881336 | NULL | NULL | YES | BTREE | |
+--------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
Estoy tratando este sencillo selecto:
select val from tbl where val = 'iii';
resultado: 86208 filas en el conjunto (0.08 seg)
Pero cuando quiero modificarlo ligeramente:
select id, val from tbl where val = 'iii';
el resultado es: 86208 filas en el conjunto (47.30 segundos)
que tienen un índice derecho en el que coumn donde los puntos a, todo lo que la modificación es la representación filas de resultados. ¿Por qué hay un retraso tan aterrador? (Debo decir que no puedo reproducir este retraso cada vez que quiero: incluso después de 'reiniciar la caché de consultas' o establecer el comando 'query_cache_type = off' se puede hacer rápidamente).
Puede intentar ejecutar 'EXPLAIN', pero sospecha que se trata más de un problema relacionado con el servidor. –
¿Por qué debería seleccionar 86 mil campos y hacer eso de DOS columnas? Creo que el problema aquí es la lógica de la consulta:/¿Quizás deberías compartir lo que debes lograr? –
Engine ?, prueba el índice de texto completo – jcho360