基于Oracle的SQL优化
含低调
一个梦想是成为教师的程序员
展开
-
第3章:Oracle里的Cursor和绑定变量
1 Oracle里的CursorCursor直译过来就是"游标",由于Oracle是C语言写的,Cursor本质上就是C语言中的StructureCursor分为两种类型Shared Cursor与Session Cursor1.1 Oracle里的Shared Cursor1.1.1 Shared Cursor的含义1.1.1.1 库缓存:Library Cache库缓存指Shared Pool中的一块内存区域库缓存内存放了刚刚执行过的SQL语句和PL/SQL语句(存储过程、函数、包、原创 2020-10-14 16:10:23 · 417 阅读 · 0 评论 -
第2章:Oracle里的执行计划
1 什么是执行计划为执行sql,Oracle内部必须按顺序执行很多步骤,最后将其执行结果作为目标sql的执行结果返回给用户,Oacle用来执行目标sql语句的这些步骤的组合称为执行计划1.1 执行计划的三部分--准备工作create table t1(col1 number, col2 varchar2(1));create table t2(col2 varchar2(1), col3 varchar2(2));select /*+real_exp_example1*/ t1.col1, t原创 2020-10-14 16:09:50 · 1098 阅读 · 0 评论 -
第5章:Oracle里的统计信息
1 Oracle统计信息简介统计信息是一组存在数据字典中的数据,它门从多个维度描述了Oracle数据库里对象的详细信息CBO会利用统计信息来计算目标SQL的成本,最后从所有可能的执行路径中,选取成本最小的作为最终执行计划统计信息按描述的对象的不同分为六种表的统计信息索引的统计信息列的统计信息数据字典的统计信息系统的统计信息内部对象的统计信息2 收集与查看统计信息2.1 收集统计信息可以通过analyze或dbms_stats来收集统计信息2.1.1 anal原创 2020-10-13 22:45:36 · 288 阅读 · 0 评论 -
第一章:Oracle里的优化器
1 什么是oracle里的优化器优化器是oracle数据库中内置的一个核心子系统,可以理解为oracle数据库中的一个核心模块,或一个核心功能组件,其目的是为了得到目标sql的执行计划优化器分为RBO(基于规则的优化器)和CBO(基于成本的优化器)两种,10g之后使用的都是CBO不再使用RBOsql语句执行过程:用户–解析–查询转换–CBO/RBO–执行计划–实际执行–用户其中查询转换和CBO/RBO组合起来为优化器1.1 RBOOracle11g已经不再使用它,因为他难以调整原创 2020-07-01 06:14:47 · 1477 阅读 · 0 评论