网站首页 > 技术文章 正文
1 命令行开启配置
#显示查询结果
set autotrace on
#不显示查询结果
set autotrace traceonly
2 执行查询语句
#设置命令行每行显示字符数,防止查询结果换行
set line 4000
#执行查询语句
select * from ah02 where aaa001='4B24B79D1D4724DBE053E523AC0A48C8';
3 分析查询结果
如上图所示,index range scan为索引范围扫描;
4 知识点拓展
几种常见的索引类型扫描:
- index unique scan
索引唯一扫描,当可以优化器发现某个查询条件可以利用到主键、唯一键、具有外键约束的列,或者只是访问其中某行索引所在的数据的时候,优化器会选择这种扫描类型。
- index range scan
索引范围扫描,当优化器发现在UNIQUE列上使用了大于、小于、大于等于、小于等于以及BETWEEN等就会使用范围扫描,在组合列上只使用部分进行查询,导致查询出多行数据。对非唯一的索引列上进行任何活动都会使用index range scan。
- index full scan
全索引扫描,如果要查询的数据可以全部从索引中获取,则使用全索引扫描。
- index fast full scan
索引快速扫描,扫描索引中的全部的数据块,与全索引扫描的方式基本上类似。两者之间的明显的区别是,索引快速扫描对查询的数据不进行排序,数据返回的时候不是排序的。“在这种存取方法中,可以使用多块读功能,也可以使用并行读入,从而得到最大的吞吐量和缩短执行时间”。
order by、group by使用索引的前提条件:
- order by、group by中所有的列必须包含在相同的索引中并保持在索引中的排列顺序;
- order by、group by中所有的列必须定义为非空
不走索引的几种情况:
- where子句中使用 is null 和 is not null
- where子句中使用函数
- 使用like ‘%T’ 进行模糊查询
- where子句中使用不等于操作(包括:<>, !=, not colum >= ?, not colum <= ? ,可以使用or代替)
- 比较不匹配数据类型,例如:select * from table where jlbh = 1;其中jlbh为varchar2类型字段
执行结果分析
- ecursive calls
解析该SQL语句调用了多少次函数来访问row cache
- consistent gets
一致性读,是SQL优化的目标(属于缓存读)
- physical reads
物理读
- redo size
产生了多少redo日志
* bytes sent via SQL*Net to client
服务端发送多少字节
* bytes received via SQL*Net from client
客户端发送了多少字节
- SQL*Net roundtrips to/from client
客户端/服务器来回次数
- sorts (memory)
内存排序
- sorts (disk)
磁盘排序
- rows processed
处理/产生了多少行结果
猜你喜欢
- 2025-07-21 效率!MacOS下超级好用的Linux虚拟工具:Lima
- 2025-07-21 PL/SQL 杂谈(六)(pl sql教程)
- 2025-07-21 PL/SQL 杂谈(四)(pl/sql语言)
- 2025-07-21 Rocky Linux 9.6重磅发布!新增WSL支持+全量包更新
- 2025-07-21 MyEclipse数据库教程:在MyEclipse中编辑和执行SQL
- 2025-07-21 Java ThreadDump 生成解析(java threadgroup)
- 2024-10-25 springboot配置oracle数据源 springboot配置jndi数据源
- 2024-10-25 Oracle 数据库、表、方案的逻辑备份与恢复
- 2024-10-25 基于prometheus+grafana体系监控Oracle数据库
- 2024-10-25 WINCC保存数据到Oracle wincc数据如何存储到excel中
你 发表评论:
欢迎- 620℃几个Oracle空值处理函数 oracle处理null值的函数
- 612℃Oracle分析函数之Lag和Lead()使用
- 601℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 597℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 593℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 584℃【数据统计分析】详解Oracle分组函数之CUBE
- 574℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 563℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)