1、修改访问结构
SQL语句的响应时间非常依赖数据的访问方式。
2、修改SQL语句
3、hint
hint是添加到SQL语句中的指令,用来影响查询优化器的判定。
当处理一条SQL语句时,查询优化器会考虑许多种执行计划。理论上,它会考虑所有可行的执行计划,实际上,除了简单的SQL语句之外,优化器为了保持合理的优化时间,不会考虑太多种组合。因此,查询优化器会根据推断排除某些执行计划。
指定一个hint时,目的主要有2个:①. 改变执行环境,启动或禁用某个特性; ②. 降低查询优化器需要考虑的执行计划数量。
除非改变执行环境,使用hint你将告诉查询优化器,针对某跳特定SQL语句应该考虑哪些操作或者不应该考虑哪些操作。
hint必须紧随delete、insert、merge、select和update关键字,注释分隔符的第一个字符必须是加号。
一般而言,hint的语法错误不会引发报错,如果解析器无法解析它们,就会把它们当做注释。
select /*+ full(emp)*/ * from emp where empno = 7788
hint的类别:
① 初始化参数hint
② 查询转换hint
③ 访问路径hint:full、hash
④ 联接hint:leading
⑤ 并行处理hint:(no_) parallel
⑥ 其他hint:(no) append