Tengo una tabla la cual posee un índice de 4 campos.
Tengo un select con un where condition de esta forma.
Cita:
Tengo entendido que si utilizo un IN en el primer o el segundo campo del índice la base de datos utilizará el índice para pa búsqueda, pero si uso el IN del tercer campo en adelante, asi:Where Campo1 = 'aaa' and Campo2 IN ('bbb','abc') and Campo3 = 'ccc' and Campo4 = 'ddd'
Cita:
Primera pregunta:Where Campo1 = 'aaa' and Campo2 = 'bbb' and Campo3 IN ('ccc','abc') and Campo4 = 'ddd'
ó
Where Campo1 = 'aaa' and Campo2 = 'bbb' and Campo3 = 'ccc' and Campo4 IN ('ddd','abc')
ó
Where Campo1 = 'aaa' and Campo2 = 'bbb' and Campo3 = 'ccc' and Campo4 IN ('ddd','abc')
La base de datos hará una búsqueda secuencial en toda la base de datos, Por qué?
Segunda pregunta:
Tengo entendido que cuando se deba utilizar el IN del tercer campo en adelante, es mejor utiliza OR, asi: (Campo3 = 'ccc' or Campo3 = 'abc'). Por qué?
Tercera pregunta:
Cómo maneja la base de datos las búsquedas con el IN?
Cuarta pregunta:
Es cierto que esto solo sucede en ORACLE?