Arturo Munive ha escrito:
> tengo un indice sobre una columna date.
>
> cuando hago una consulta ...
> *Select *
> id
> *from *
> ventas
> *WHERE *
> fecha = date('12-JAN-2007')
>
> el planificador usa el indice
>
> pero cuando la restriccion es WHERE fecha < date('12-JAN-2007')
>
> se efectua un barrido secuencial.
>
> ni e indice ni la tabla ni la consulta son nada complejos
>
> que me olvido o que debo hacer para que se utilize el indice cuando uso el operador menor
Depende de la distribuci�n de informaci�n en (y estad�sticas de) la
tabla en cuesti�n.
1. �Haz ejecutado ANALYZE? El planificador depende de estad�sticas
recientes para tomar una mejor decisi�n.
2. �En la tabla, la mayor�a de los datos son menor que la fecha de
ejemplo? Si es as�, y haz analizado, de igual forma el planificador
puede juzgar que el barrido secuencial es lo m�s indicado, ya que se
visitan la mayor�a de las p�ginas de datos.
3. Si haz analizado y la distribuci�n no es acorde a (2), entonces
puedes jugar con los par�metros de costo del archivo de configuraci�n,
o incrementar el target de estad�sticas de la columna en cuesti�n.
Consulta la documentaci�n para ver estos casos.
Suerte.