Comparacion de SQLs

19/12/2004 - 18:32 por Codigo47 | Informe spam
Tiene la mis performance, un Store con un Where asi:

WHERE IDAgente = CASE @IDAgente WHEN 0 THEN IDAgente ELSE @IDAgente END
AND Agente LIKE '%' + CASE @Agente WHEN '' THEN Agente ELSE @Agente END +
'%'

Que otro con este where:

WHERE Agente Like '%' + @Agente + '%'

Suponiendo que los 2 tienen los mismos campos en la clausula SELECT y la
misma tabla en el FROM.

Gracias.

Codigo47
Analista de Sistemas Informáticos
Argentina, Buenos Aires
www.faqvbnet.com.ar
 

Leer las respuestas

#1 MAXI
19/12/2004 - 22:08 | Informe spam
Hola, todo depende, pero el uso de like % algo % ya por definicion no usa
los indices :(

Para poder comprobarlos te recomiendo que mires los planes de ejecucion de
uno y de otro




Maxi

Buenos Aires - Argentina
Desarrollador .NET 3 Estrellas
Microsoft User Group (MUG)

Msn Messenger:

"Codigo47" escribió en el mensaje
news:
Tiene la mis performance, un Store con un Where asi:

WHERE IDAgente = CASE @IDAgente WHEN 0 THEN IDAgente ELSE @IDAgente END
AND Agente LIKE '%' + CASE @Agente WHEN '' THEN Agente ELSE @Agente END +
'%'

Que otro con este where:

WHERE Agente Like '%' + @Agente + '%'

Suponiendo que los 2 tienen los mismos campos en la clausula SELECT y la
misma tabla en el FROM.

Gracias.

Codigo47
Analista de Sistemas Informáticos
Argentina, Buenos Aires
www.faqvbnet.com.ar


Preguntas similares