Alguien tiene una explicación... Cosa loca

07/03/2008 - 04:12 por fernando C | Informe spam
Hola, gente. Tengo una tremenda curiosidad. lo que me pasa el lo siguiente SI
inmediatamnte despues de abrir la base SQL2000 CON ADO usando ODBC ejecuto la
siguiente sentencia SELECT MAX(Campo1) FROM Tabla1 tarda un monton traer el
resultado, aunque la tabla este vacia. Pero si antes de esta sentencia hago
SELECT Campo1 FROM Tabla1 WHERE Campo1 = 0 , intentando que el resultado sea
vacio, la direfencia de velocidad en muy notoria, tarda casi nada. Porque? Lo
mismo pasa con la función Count, y en base a esto supongo que puede pasar lo
mismo con otras funciones. Algo que ver, tal vez, con la configuración de la
DB.

Muchas gracias.
Salu2.
 

Leer las respuestas

#1 Gux (MVP)
07/03/2008 - 15:14 | Informe spam
Contado en forma simple: sucede que la consulta fue precompilada y cacheada
por SQL Server.

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"fernando C" wrote:

Hola, gente. Tengo una tremenda curiosidad. lo que me pasa el lo siguiente SI
inmediatamnte despues de abrir la base SQL2000 CON ADO usando ODBC ejecuto la
siguiente sentencia SELECT MAX(Campo1) FROM Tabla1 tarda un monton traer el
resultado, aunque la tabla este vacia. Pero si antes de esta sentencia hago
SELECT Campo1 FROM Tabla1 WHERE Campo1 = 0 , intentando que el resultado sea
vacio, la direfencia de velocidad en muy notoria, tarda casi nada. Porque? Lo
mismo pasa con la función Count, y en base a esto supongo que puede pasar lo
mismo con otras funciones. Algo que ver, tal vez, con la configuración de la
DB.

Muchas gracias.
Salu2.

Preguntas similares