Oracle使用强制索引注意事项

时间:2021-07-22 11:47:09

强制索引语法:SELECT /*+ index(table IndexName)*/


如果查询语句中,表用到别名时,上边语句中的table一定要是别名,否则不走执行强制索引。


------------------------------------------------------------------------------------

今天对Oracle的SQL索引生效条件进行了验证,发现如下规律,记录如下:

1、索引生效与记录的条数相关

      a、2016-01-01~2016-11-30 数据量402518,索引生效
      b、2016-01-01~2016-12-30 数据量444844,索引不生效

SELECT
*
FROM
T_MAINS
WHERE
date > TO_DATE (--备注今天是2017-01-23
'2016-01-01',
'yyyy-mm-dd hh24:mi:ss'
)
AND date < TO_DATE (
'2016-11-30',
'yyyy-mm-dd hh24:mi:ss'
);

2、T_MAINS已根据某个时间类型的字段进行分区,查询条件中如果能够精准定位到某个分区,可以提高SQL的执行效率