使用PL/SQL执行计划进行sql调优

使用PL/SQL执行计划进行sql调优

1、打开工具:pl/sql  developer

pl/sql中写好一个SQL语句,然后按F5打开执行计划分析窗口

2、查看cost,获得消耗资源的总体印象

一般而言,执行计划的第一行所对应的cost值,反应了这段代码的总体成本估计,单看这个没有实际意义,但是拿这个cost和不同计划的执行比较,就可以比对出执行效率的高低。

3、按照从左到右,从上到下的方法,了解执行计划的执行步骤。

4、分析表的访问方式:

表的访问方式有2种:第一种是全表扫描table access full和索引扫描index scan,如果表上存在选择性很好的索引,却走了全表扫描,说明存在问题。

5、分析表的连接方式和连接顺序

表的连接顺序:就是以那张表作为驱动表连接其他表的先后访问顺序。

表的连接方式:简单的说分为三种:嵌套循环、哈希连接和排序-合并连接

 

网络文本:

我们常见得是嵌套循环和哈希连接。 

嵌套循环:最适用也是最简单的连接方式。类似于用两层循环处理两个游标,外层游标称作驱动表,Oracle检索驱动表的数据,一条一条的代入内层游标,查找满足WHERE条件的所有数据,因此内层游标表中可用索引的选择性越好,嵌套循环连接的性能就越高。 

哈希连接:先将驱动表的数据按照条件字段以散列的方式放入内存,然后在内存中匹配满足条件的行。哈希连接需要有合适的内存,而且必须在CBO优化模式下,连接两表的WHERE条件有等号的情况下才可以使用。哈希连接在表的数据量较大,表中没有合适的索引可用时比嵌套循环的效率要高。


联系作者:


加群交流:


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SQL Developer是一款由Oracle开发的基于SQL语言的数据库开发工具,而PL/SQL Developer是一款基于PL/SQL语言的数据库开发工具,它比SQL Developer更强大,可以支持更多的数据库操作,例如存储过程、触发器、包等。 ### 回答2: PL/SQL Developer和SQL Developer是两个常用的数据库开发工具。 PL/SQL Developer是一款由Allround Automations公司开发的工具,主要针对Oracle数据库的开发工具。它支持PL/SQL语言的开发和调试,可以方便地编辑、编译和调试PL/SQL代码,并提供了丰富的功能来优化和调优SQL查询。 SQL Developer是Oracle公司官方推出的一款跨平台的数据库开发工具。它支持多种数据库系统,包括Oracle、MySQL、Microsoft SQL Server等。SQL Developer提供了一套强大的功能,用于数据库开发和管理,包括SQL语句的编辑和执行、对象的创建和修改、数据库的导入和导出等。 两个工具之间的主要区别在于对不同数据库系统的支持和功能上的差异。PL/SQL Developer主要专注于Oracle数据库的开发,提供了丰富的PL/SQL开发和调试功能,能够更好地满足Oracle数据库开发的需求。而SQL Developer则不仅支持Oracle数据库,还支持其他主流的数据库系统,且功能更加全面,涵盖了数据库管理和开发的方方面面。 总的来说,如果你主要使用Oracle数据库进行开发工作,那么PL/SQL Developer是一个不错的选择。而如果你需要支持多个数据库系统或者需要更全面的数据库开发和管理功能,那么SQL Developer可能更适合你的需求。 ### 回答3: PL/SQL Developer和SQL Developer都是常用的数据库开发工具,它们都是由不同的公司开发的,具有一些不同之处。 首先,PL/SQL Developer是由Allround Automations公司开发的。它是基于Oracle数据库的专业开发工具,主要用于编写、调试和优化PL/SQL存储过程、函数和触发器等数据库对象。它具有直观的用户界面,提供了强大的代码编辑器和调试器,可以快速定位和解决错误。PL/SQL Developer还具有自动完成、语法高亮显示和代码模板等功能,有助于提高开发效率。 而SQL Developer是由Oracle公司自家开发的工具,并且免费提供给用户。与PL/SQL Developer相比,SQL Developer是一个全方位的数据库开发工具,不仅支持PL/SQL编程,还支持SQL和Java。它具有类似于PL/SQL Developer的功能,如代码编辑、调试和优化,同时还提供了数据库对象浏览、数据模型设计和数据导入/导出等功能。SQL Developer还可以连接多个数据库实例,包括Oracle、MySQL、Microsoft SQL Server等,使得跨数据库开发更加方便。 总体来说,PL/SQL Developer更加专注于Oracle数据库的PL/SQL编程,提供了针对PL/SQL开发的一些特殊功能。而SQL Developer是一个更全面的数据库开发工具,支持多种数据库和编程语言。选择使用哪种工具,取决于开发人员的需求和使用场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值