David,
I've found that the indexed field (or expression) MUST be on the left for Rushmore to work correctly. In your case could you have used a BETWEEN construction?
Barbara
>
Why does this only partially optimize:
>
>select * ;
> from history ;
> into cursor xtemp ;
> where ( ( ltStart <= tCreated ) and ( tCreated < ltStop ) ) ;
> order by iMachineID, tCreated
>
>to get it to fully optimize it has to be written:
>
>select * ;
> from history ;
> into cursor xtemp ;
> where ( ( tCreated >= ltStart ) and ( tCreated < ltStop ) ) ;
> order by iMachineID, tCreated
>
>
>Why does the field have to appear on the left side or the operator??? Is this documented somewhere?
>
>I'd prefer to to write things more like the algebraic ltStart <= X < ltStop. But evidently rushmore is persnickety about coding that way. There is are indexes on tCreated and iMachineID.