En T-SQL, ¿qué es más rápido?¿Qué es más rápido EN O?
DELETE * FROM ... WHERE A IN (x,y,z)
O
DELETE * FROM ... WHERE A = x OR A = y OR A = z
En mi caso x, y, z son parámetros de entrada para el procedimiento almacenado. Y estoy tratando de obtener el rendimiento de mis declaraciones DELETE e INSERT de la mejor manera posible.
Thnx, en el plan de ejecución vi que costaría exactamente la misma cantidad de tiempo de CPU. – Zyphrax
Esto no es verdad. En no se traduce como un serise de ors. Será mejor que perfile su consulta y realmente vea el resultado. La mayoría de las veces, EXISTS es más rápido que IN. Pero O * debe * ser más rápido que ambos. Sin embargo, depende de los índices. –
@Frank, estamos hablando de IN con listas de valores, no de IN con subconsultas. –