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

Preguntas similare

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
Respuesta Responder a este mensaje
#2 Junior
28/03/2006 - 04:08 | Informe spam
No de como pasarte el plan pero sin existen los indices por tipo e
indentificacion, por eso es que no entiendo lo que pasa, es como si no se
estuvieran usando los indices, se hace un scan del 100% de la tabla

"Maxi [Mvp]" escribió:

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



Respuesta Responder a este mensaje
#3 Maxi
28/03/2006 - 13:41 | Informe spam
No, ojo que un cluster index scan es como un can de la tabla casi


Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Junior" escribió en el mensaje
news:
No de como pasarte el plan pero sin existen los indices por tipo e
indentificacion, por eso es que no entiendo lo que pasa, es como si no se
estuvieran usando los indices, se hace un scan del 100% de la tabla

"Maxi [Mvp]" escribió:

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
> en
> el jurídico interno
> BEGIN
> select top 1 Identificacion ,RazonSocial
> from externo_Juridicas
> where Tipo=@pIdTipo and Identificacion=
> @pIdIdentificacion
> END



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida