代码讲解Oracle可选择性

数据库 Oracle
这里介绍Oracle可选择性越高,该列就越适合创建索引,同样索引的Oracle可选择性也越高。在Oracle可选择性高的列上进行查询时,返回的数据就较少,比较适合使用索引查询。

Oracle还是比较常用的,于是我研究了一下Oracle可选择性,本文比较一下列中唯一键的数量和表中的行数,就可以判断该列的Oracle可选择性,在这里拿出来和大家分享一下,希望对大家有用。

#t#如果该列的”唯一键的数量/表中的行数”的比值越接近1,则该列的Oracle可选择性越高,该列就越适合创建索引,同样索引的Oracle可选择性也越高。在Oracle可选择性高的列上进行查询时,返回的数据就较少,比较适合使用索引查询。

有了这些背景知识后就开始介绍执行计划。为了执行语句,Oracle可能必须实现许多步骤。这些步骤中的每一步可能是从数据库中物理检索数据行,或者用某种方法准备数据行,供发出语句的用户使用。

Oracle用来执行语句的这些步骤的组合被称之为执行计划。执行计划是SQL优化中最为复杂也是最为关键的部分,只有知道了Oracle在内部到底是如何执行该SQL语句后,我们才能知道优化器选择的执行计划是否为***的。执行计划对于DBA来说,就象财务报表对于财务人员一样重要。所以我们面临的问题主要是:如何得到执行计划;如何分析执行计划,从而找出影响性能的主要问题。下面先从分析树型执行计划开始介绍,然后介绍如何得到执行计划,再介绍如何分析执行计划。

举例:

这个例子显示关于下面SQL语句的执行计划。

  1. SELECT ename, job, sal, dname  
  2.  
  3. FROM emp, dept  
  4.  
  5. WHERE emp.deptno = derpt.deptno  
  6.  
  7. AND NOT EXISTS  
  8.  
  9. ( SELECT *  
  10.  
  11. FROM salgrade  
  12.  
  13. WHERE emp.sal BETWEEN losal AND hisal ); 

此语句查询薪水不在任何建议薪水范围内的所有雇员的名字,工作,薪水和部门名。

责任编辑:佚名 来源: IT168
相关推荐

2023-07-31 12:05:38

GIL全局解释器锁

2023-08-08 14:17:58

OpenAI模型

2013-04-19 11:24:19

Ubuntu 13.0GNOME桌面

2011-04-06 10:20:26

MySQL数据库索引

2020-11-15 23:18:18

Docker容器化容器

2009-09-16 15:05:38

开源软件软件营销开源产品

2012-11-05 14:38:04

2014-12-17 10:59:28

2011-06-29 09:33:18

Qt 编译

2010-03-03 08:57:18

浏览器用户选择

2021-12-03 12:03:21

Windows 11菜单布局应用程序

2022-08-19 09:53:20

人工智能大数据风险

2012-03-27 14:23:38

Windows 8IE10

2014-08-06 10:10:52

MariaDB二进制日志

2011-04-08 15:12:22

Oracle索引

2022-01-12 13:45:09

微软Windows 11Windows

2021-02-15 18:50:12

谷歌Chrome浏览器

2010-07-13 14:06:26

Perl选择性控制结构

2009-10-13 08:50:45

Windows 7关闭预览

2022-12-09 10:09:24

微软Windows 11
点赞
收藏

51CTO技术栈公众号