首先要看你的Oracle優化器采用的是RBO還是CBO,
(1)如果使用的是RBO的話,會按照規則順序來進行的.
(2)如果使用的是CBO的話,那麼可以使用HINT方式進行修改。
語法:SELECT /*+ index(table IndexName)*/
如果查詢語句中,表用到別名時,上邊語句中的table一定要是別名,否則不走執行強制索引。
例子:
select /*+INDEX(t IDX_DATE)*/ from student t where t.birthday > to_date('2010-12-28 00:00:00', 'yyyy-mm-dd hh24:mi:ss') and t.birthday < to_date('2010-12-28 23:59:59', 'yyyy-mm-dd hh24:mi:ss') group by t.class