La sentencia que estás usando puede ser un problema, porque exige al motor de MySQL una búsqueda demasiado compleja, y por allí puede estar el problema. Es muy posible que haya un exceso de recursos usados y esto se perciba cuando se ejecuta a nivel local, ya que es tu propia PC la que se está usando para responder a la consulta.
Esta misma consulta, realizada contra un server de bases de datos (un buen fierro), no debería pestañear, pero, como dije, si los recursos de la PC no son buenos, puede haber problemas.
Supongo que en este foro debe haber una restricción parecida respecto a la de MySQL, pero aún así veamos:
Código SQL:
Ver originalSELECT
Campo5,
COUNT(Campo5) AS 'Total'
FROM MyDBs.tblExample
WHERE
Campo6 >= '" & _fecha1 & "' AND
Campo6 <= '" & _fecha2 & "' AND
Campo9 IN (" & _text & ") AND
Campo5 LIKE '%" & _val & "%'
GROUP BY Campo5
Hay demasiadas condiciones en el WHERE (podría haber más), y al menos dos de ellas se pueden sintetizar con una sola cláusula.
Cuando pones demasiadas cosas en el WHERE debes recordar queel MySQL no puede optimizar lo que se ponga allí, lo que sí puede cuando va en el SELECT o el FROM.
Por otro lado, el uso de LIKE exige al MySQL la realización de una rutina mucho más compelja que simplemente un "=". El mejor modo de enfrentarlo sería realizar un prefiltrado de tabla usando subconsultas:
Código SQL:
Ver originalSELECT
Campo5
FROM MyDBs.tblExample
WHERE
Campo9 IN (" & _text & ") AND
(Campo6 BETWEEN '" & _fecha1 & "' AND '" & _fecha2 & "');
Esto permitirá hacer un filtrado general sobre valores que deben estar sí o si. El MySQL construye una tabla en memoria con los registros que cumplen esta condición. Si luego ponemos:
Código SQL:
Ver originalSELECT
Campo5,
COUNT(Campo5) AS 'Total'
FROM
SELECT
Campo5
FROM MyDBs.tblExample
WHERE
Campo9 IN (" & _text & ") AND
(Campo6 BETWEEN '" & _fecha1 & "' AND '" & _fecha2 & "') ) Tabla1
WHERE
Campo5 LIKE '%" & _val & "%'
GROUP BY Campo5
Con esto, el LIKE se usará solamente sobre la tabla ya condensada con las otras condiciones, que son las que más registros van a eliminar, por lo que la tabla en memoria quedaría muy reducida.
Intentalo y veamos.
P.D.: Si se da algun error de sintaxis, será porque esto lo escribí un poco apurado.
Un tip final sería recomendarte que elimines el MySQL 6.0 y pongas el 5.1.4, ya que el 6.0 fue un proyecto alfa (las alfa son las que contienen todos los errores imaginables), y la release final de ese proyecto fue la 5.1.3, según entiendo, donde los bugs del 6.0 están corregidos.