[20190430]注意sql hint写法.txt --//链接:https://www.bobbydurrettdba.com/2019/04/16/check-your-hints-carefully/ SCOTT@book> @ ver1 PORT_STRING VERSION BANNER ------------------------------ -------------- -------------------------------------------------------------------------------- x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production SCOTT@book> @ sqlhint cache old 1: select * from V$SQL_HINT where name like upper('%&1%') new 1: select * from V$SQL_HINT where name like upper('%cache%') NAME SQL_FEATURE CLASS INVERSE TARGET_LEVEL PROPERTY VERSION VERSION_OUTLINE ---------------- --------------- ------------ --------------- ------------ ---------- -------- ---------------- CACHE_CB QKSFM_CBO CACHE_CB NOCACHE 4 256 8.1.5 CACHE QKSFM_EXECUTION CACHE NOCACHE 4 256 8.1.0 NOCACHE QKSFM_EXECUTION CACHE CACHE 4 256 8.1.0 CACHE_TEMP_TABLE QKSFM_ALL CACHE NOCACHE 4 256 8.1.5 RESULT_CACHE QKSFM_EXECUTION RESULT_CACHE NO_RESULT_CACHE 2 0 11.1.0.6 NO_RESULT_CACHE QKSFM_EXECUTION RESULT_CACHE RESULT_CACHE 2 0 11.1.0.6 6 rows selected. SCOTT@book> select /*+ result cache */ * from dept ; DEPTNO DNAME LOC ---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON --//注意中间没有"_". SCOTT@book> @ dpc '' '' PLAN_TABLE_OUTPUT ------------------------------------- SQL_ID 5sm6uuf1wtunm, child number 0 ------------------------------------- select /*+ result cache */ * from dept Plan hash value: 3383998547 --------------------------------------------------------------------------- | Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time | --------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | | | 3 (100)| | | 1 | TABLE ACCESS FULL| DEPT | 4 | 80 | 3 (0)| 00:00:01 | --------------------------------------------------------------------------- Query Block Name / Object Alias (identified by operation id): ------------------------------------------------------------- 1 - SEL$1 / DEPT@SEL$1 SCOTT@book> select /*+ result_cache */ * from dept ; DEPTNO DNAME LOC ---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON SCOTT@book> @ dpc '' '' PLAN_TABLE_OUTPUT ------------------------------------- SQL_ID dh09kah6tkdjy, child number 0 ------------------------------------- select /*+ result_cache */ * from dept Plan hash value: 3383998547 -------------------------------------------------------------------------------------------------- | Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time | -------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | | | 3 (100)| | | 1 | RESULT CACHE | gsg6g7y8rvxaydjyjh2g2yr21r | | | | | | 2 | TABLE ACCESS FULL| DEPT | 4 | 80 | 3 (0)| 00:00:01 | -------------------------------------------------------------------------------------------------- Query Block Name / Object Alias (identified by operation id): ------------------------------------------------------------- 1 - SEL$1 2 - SEL$1 / DEPT@SEL$1 --//链接:http://www.oaktable.net/content/avoid-compound-hints-better-hint-reporting-19c,也提到一种情况: --//我没有19c. SCOTT@book> select /*+ use_nl(emp dept) */ * from dept ,emp where dept.deptno=emp.deptno; ... SCOTT@book> @ dpc '' '' PLAN_TABLE_OUTPUT ------------------------------------- SQL_ID gk5d852xxj4b5, child number 0 ------------------------------------- select /*+ use_nl(emp dept) */ * from dept ,emp where dept.deptno=emp.deptno Plan hash value: 4192419542 ---------------------------------------------------------------------------- | Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time | ---------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | | | 10 (100)| | | 1 | NESTED LOOPS | | 14 | 812 | 10 (0)| 00:00:01 | | 2 | TABLE ACCESS FULL| DEPT | 4 | 80 | 3 (0)| 00:00:01 | |* 3 | TABLE ACCESS FULL| EMP | 4 | 152 | 2 (0)| 00:00:01 | ---------------------------------------------------------------------------- Query Block Name / Object Alias (identified by operation id): ------------------------------------------------------------- 1 - SEL$1 2 - SEL$1 / DEPT@SEL$1 3 - SEL$1 / EMP@SEL$1 Predicate Information (identified by operation id): --------------------------------------------------- 3 - filter("DEPT"."DEPTNO"="EMP"."DEPTNO") --//注意看执行计划,实际上主驱动dept表.只有写成如下: SCOTT@book> select /*+ use_nl(emp ) */ * from dept ,emp where dept.deptno=emp.deptno; .. Plan hash value: 1123238657 ------------------------------------------------------------------------------------------------------- | Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time | OMem | 1Mem | Used-Mem | ------------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | | | 6 (100)| | | | | |* 1 | HASH JOIN | | 14 | 812 | 6 (0)| 00:00:01 | 1048K| 1048K| 662K (0)| | 2 | TABLE ACCESS FULL| EMP | 14 | 532 | 3 (0)| 00:00:01 | | | | | 3 | TABLE ACCESS FULL| DEPT | 4 | 80 | 3 (0)| 00:00:01 | | | | ------------------------------------------------------------------------------------------------------- --//这样emp才能作为驱动表. --//最后一种情况是我经常犯的错误..
[20190430]注意sql hint写法.txt
来源:这里教程网
时间:2026-03-03 13:29:11
作者:
编辑推荐:
- [20190430]注意sql hint写法.txt03-03
- [20190428]恢复oraInventory.txt03-03
- oracle 10.2.0.4 sql关联查询语句中含有 connect by 导致报错出现ORA-0060003-03
- [20190423]oradebug peek测试脚本.txt03-03
- OGG for kafka op_ts 和current_ts相差较大03-03
- 使用DBUA把数据库从11g升级到19c的non-cdb简示(单实例版)03-03
- 记一次Oracle RAC for aix 存储双控锁盘导致ASM控制文件损坏恢复03-03
- Oracle Rac 修改SGA_TARGET值无变化03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- oracle 10.2.0.4 sql关联查询语句中含有 connect by 导致报错出现ORA-00600
- 使用DBUA把数据库从11g升级到19c的non-cdb简示(单实例版)
使用DBUA把数据库从11g升级到19c的non-cdb简示(单实例版)
26-03-03 - Oracle Rac 修改SGA_TARGET值无变化
Oracle Rac 修改SGA_TARGET值无变化
26-03-03 - 13-oracle_数据库存储过程和包的开发
13-oracle_数据库存储过程和包的开发
26-03-03 - 12-oracle_分区
12-oracle_分区
26-03-03 - Debian Zabbix:企业级监控(手把手教你从零搭建开源监控系统)
Debian Zabbix:企业级监控(手把手教你从零搭建开源监控系统)
26-03-03 - 万字详解Oracle架构、原理、进程,学会世间再无复杂架构
万字详解Oracle架构、原理、进程,学会世间再无复杂架构
26-03-03 - oracle数据库exp
oracle数据库exp
26-03-03 - Debian Partclone 教程(手把手教你使用 Partclone 在 Debian 系统中进行分区克隆与备份)
- Oracle数据库常用十一大操作指令
Oracle数据库常用十一大操作指令
26-03-03
