![]() |
Como acelerar búsqueda de valores extremos?
Pues eso, lo del encabezamiento
Tengo una tabla con cuatro campos (Clave, Fecha, Hora y Valor) y necesito sacar el máximo, el mínimo y las horas en que se producen de un día determinado. Hasta ahora lo hago en dos pasos para cada valor (por ejemplo, para el 23-10-2008): 1º - Consulto los valores extremos 2º - Consulto las fechas en que se producen los valores extremos La cosa funciona, pero da la impresión de quedarse "colgado" el sistema (osea que tarda demasiado), por eso mi pregunta ¿Hay alguna otra forma para acelerar el resultado? Gracias de antemano Salvica |
Hola, prueba de no usar las comillas en la comparacion de 'fecha'
|
Si son tablas con mucha informacion, una solucion es crear indices y realizar las busquedas implementando los mismos.
|
Cita:
Cita:
De todas formas creo que lo he solucionado revisando este hilo, donde poliburro trata algo parecido Lo dicho, gracias a todos y si no hay más aportaciones doy el hilo por cerrado Salvica |
|
Hola poliburro, he intentado adaptar tu consulta y, o no he sabido hacerla :mad:, o el resultado no es el que me esperaba :eek: (saca todo revuelto)
En realidad necesito un consulta que me devuelva el valor máximo (o el mínimo), o mejor los dos :D, con las horas en que se producen dichos eventos (puede ser una o varias, depende de si se repite al cabo del tiempo) Según el hilo tuyo que puse en el mensaje anterior, hice lo siguiente: z_view_media1min es una vista en la que ya tengo almacenados los valores de un día determinado (unos 8600 más o menos) y consta (al igual que las tablas padres) de Clave, Fecha, Hora y Valor La cuestión es que cuando le pido los valores extremos (máximo y mínimo) parece que "se eterniza" (o por lo menos esa es mi impresión), por eso mi pregunta. De todas formas, muy buenas tus explicaciones en otros hilos. Gracias Salvica |
Cita:
Ok, entonces igual te conviene indexar el campo valor y generar la vista de esta manera:
de esta manera obtienes todos los registros en media cuyo valor es igual al máximo o igual al mínimo. Indexar el campo valor te ayudará a mejorar la velocidad de la consulta. Saludos |
hola, no se bien bien si es lo que buscas, pero
no te daria el resultado? (quiza lo entendi mal) |
Sobre el rendimiento, no estoy seguro...pero me da la impresion que si pones date como una string, el servidor sql la pasa a datetime...quiza si sacases las comillas :confused: (ya te digo que no estoy seguro, no conozco a fondo MySQL)
|
La franja horaria es GMT +2. Ahora son las 12:55:34. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi