SQL-Server ¿Es mejor usar IN o BETWEEN?

Otro tip rápido de SQL-Server ¿Es mejor hacer uso de IN o de BETWEEN? Bueno, en este caso la respuesta es rápida: debemos usar BETWEEN siempre que sea posible. Veamos dos consultas:

//primero con in 
Select Nombre from Pacientes where Id IN (3000,3001,3002,3003,3004);
//ahora between
Select Nombre from Pacientes where Id BETWEEN 3000 AND 3004

¿Por qué es mejor usar BETWEEN? Bueno, si no existe un índice para el campo sobre el que ejecutamos la búsqueda no notaremos mucho cambio, pero si hay índices la respuesta de BETWEEN será mucho más rápida. Siempre que se trate de buscar un resultado dentro de un rango BETWEEN será la mejor opción. ¿Cuándo debemos usar IN? Pues cuando busquemos un resultado dentro de un conjunto que no sea consecutivo. Por ejempolo en una situación como la siguiente:

//En este caso IN es lo correcto
Select Nombre from Pacientes where Id IN (3000,4001,5002,6003,8004);
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s