Hola para comentarles que la consulta anda bien, pero tengo un incoveniente:
Código PHP:
Ver original$query = "select t_u.*, t_edo.nombre as nestado, t_ciu.nombre as nciudad, t_mun.nombre_municipio as nmunicipio";
$query .= " from t_usuarios t_u";
$query .= " LEFT JOIN t_estados t_edo on t_edo.estado = t_u.estado AND t_edo.ciudad = ''"; // Agregamos ciudad (vacía)
$query .= " LEFT JOIN t_estados t_ciu on t_ciu.ciudad = t_u.ciudad AND t_ciu.estado = t_u.estado"; // Agregamos estado
$query .= " LEFT JOIN t_municipio t_mun on t_mun.municipio = t_u.municipio";
$query .= " where t_u.status='' and (t_u.nombre LIKE '%$q%' OR t_u.matricula LIKE '%$q%') limit $offset,$rows";
Esta consulta la ocupo en un autocomplete, por lo que cada vez que se escribe un letra en el campo de texto supongo que se dispara esta consulta y busca conincidencias.
El problema creo yo que al tener 3 left join tal vez se hace un poco pesado para el servidor mandar cada vez al base y cuando voy obteniendo los resultados en el autocomplete como que se traba un poco. Por ejemplo si escribo rapido como que no resulta eficiente.
Como podria optimizar esta consulta?