Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/06/2010, 14:07
ingeday
 
Fecha de Ingreso: noviembre-2008
Mensajes: 89
Antigüedad: 15 años, 4 meses
Puntos: 0
De acuerdo Velocidad en ejecución de consulta SQL

Hola... espero se encuentren bien.

Hoy tengo una pequeña duda y espero alguien pueda ayudarme...

Resulta que tengo una consulta que dándole un order by se coloca lenta y a veces hasta el mismo motor interrumpe la consulta porque demora mucho. Pero al quitarle el order by Corre de maravilla..... Pero el dilema es que necesito ordenarla... Bueno aquí más o menos como es mi consulta:

Código:
SELECT DISTINCT (e.CodEstudiante ) FROM Tabla1 AS e, Tabla2 AS nm, Tabla3 AS m WHERE e.Campo1 = '18' AND DATE_FORMAT( nm.Fecha, '%m' ) = '06' AND DATE_FORMAT( nm.Fecha, '%Y' ) = '2010' AND e.CodEstudiante NOT IN ( SELECT es.CodEstudiante FROM `Tabla1` AS es, Tabla2 AS nm, Tabla3 AS m WHERE es.GradoEstudiante = '18' AND nm.IdPeriodo='5' AND nm.CodEstudiante = es.CodEstudiante AND m.IdMateria = nm.IdMateria AND nm.IdMateria = '239')   order by e.Apellidos limit 1;
Al final antes de limit 1 si le quito que me ordene... hace la consulta volando, pero si le coloco el order by se pone muy lento... Por qué será ? Alguién tiene idea de lo que pueda pasar?


Gracias....

Edito: Estoy ordenando por un campo de texto... No se si esto tenga que ver. Aunque al colocarle limit 1, debería rápida la consulta, no?

Última edición por ingeday; 21/06/2010 a las 14:12