Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/04/2015, 11:38
Avatar de planmental
planmental
 
Fecha de Ingreso: abril-2015
Mensajes: 100
Antigüedad: 9 años, 7 meses
Puntos: 0
Consulta larga lenta por ORDER BY

Muy buenos días a todos los foreros hoy vengo con un pequeño gran problema que ya tengo más de dos días sin poder resolver.

Lo que sucede es que tengo que hacer una consulta en una sola tabla con más de medio millón de registros y todo me sale muy bien con la siguiente consulta:

Código SQL:
Ver original
  1. SELECT * FROM Traspasos LIMIT 0, 50
Con el código anterior todo sale bien pues la consulta es limitada a los primero 50 registros.

Pero el problema viene cuando quiero ordenar con ORDER BY

Código SQL:
Ver original
  1. SELECT * FROM Traspasos ORDER BY traspaso_id DESC LIMIT 0, 50
Pues quiero sólo los últimos 50 registros de la tabla Traspasos, pero al hacerlo la consulta se vuelve lentísima y me sale un exceed limit 30 seconds.

El problema se soluciona con set_limit pues cuando lo pongo se soluciona y si me muestra resultados pero se sigue tardando. Lo que necesito es que no se tarde demasiado.

Entonces me gustaría que me dijeran si alguien sabe como optimizar dicha consulta de esa tabla pero con el orden que necesito.

Gracias y Saludos

Última edición por gnzsoloyo; 28/04/2015 a las 12:06