![]() |
realizar consulta sin obtener resultados es muy lenta
Saludos,
Un tips que conozco para realizar una consulta sin traer resultados (util en algunos casos especiales, como activar datasets en blanco) es agregando un where 1 = 2 a la sentencia select. Ejm: Código:
select * from empleados where 1 = 2 Código:
select * from empleados where codigo = 0 |
Seguramente si miras el "plan execute" verás que ha recorrido todos los registros secuencialmente, por esa tarda.
De todas formas no entiendo el motivo de hacer eso, o sea, no entiendo eso de "activar dataset en blanco", ¿a qué te refieres? |
Cita:
He hecho una prueba similar a la de Erick y pasa lo que él dice. Una explicación lógica es que al no aparecer en la cláusula Where ningún campo indexado, Firebird usa de forma predeterminada el plan Natural. Por tanto hay que usar un campo indexado, como Codigo. No estoy seguro de que deba ocurrir, pero puede que alguna de las nuevas versiones de Firebird vengan con optimización para "consultas obvias". :) Cita:
Cita:
|
La franja horaria es GMT +2. Ahora son las 22:00:49. |
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