Profiler y 32 000 lecturas

28/03/2006 - 00:39 por Junior | Informe spam
Tengo un procedimiento almacnenado que me recibe como parametro un id y
retorna el nombre si existe en la base de datos.

Ya le cree un indice por id pero reviso en el profiler y realiza 32000
lecturas a la base de datos antes de indicarme que no existe el dato. Como
disminuy la cantidad de lecturas?


If Exists( select TOP 1 Identificacion
from SuJurInterno
where Tipo = @pIdTipo and Identificacion= @pIdIdentificacion)

select top 1 Identificacion ,RazonSocial
from SuJurInterno
where Tipo=@pIdTipo and Identificacion= @pIdIdentificacion

else
el jurídico interno
BEGIN
select top 1 Identificacion ,RazonSocial
from externo_Juridicas
where Tipo=@pIdTipo and Identificacion= @pIdIdentificacion
END
 

Leer las respuestas

#1 Maxi [Mvp]
28/03/2006 - 01:56 | Informe spam
Hola, y si nos pasas los planes de ejecucion podriamos ver que esta
sucediendo.

En principio, tenes indices por tipo e identificacion?


Saludos

-
Buenos Aires - Argentina
[Microsoft MVP SQL SERVER]
www.sqlgurus.org
"Junior" wrote in message
news:
Tengo un procedimiento almacnenado que me recibe como parametro un id y
retorna el nombre si existe en la base de datos.

Ya le cree un indice por id pero reviso en el profiler y realiza 32000
lecturas a la base de datos antes de indicarme que no existe el dato. Como
disminuy la cantidad de lecturas?


If Exists( select TOP 1 Identificacion
from SuJurInterno
where Tipo = @pIdTipo and Identificacion= @pIdIdentificacion)

select top 1 Identificacion ,RazonSocial
from SuJurInterno
where Tipo=@pIdTipo and Identificacion= @pIdIdentificacion

else
el jurídico interno
BEGIN
select top 1 Identificacion ,RazonSocial
from externo_Juridicas
where Tipo=@pIdTipo and Identificacion= @pIdIdentificacion
END

Preguntas similares