SQL的运行过程(好形象)

原创 2015年11月17日 19:16:33

SQL的运行过程就象你到图书馆去借书:

当你和图书管理员说你要鲁迅的全部书籍(SELECT * FROM PUB WHERE NAME='鲁迅'),图书管理员会很快想出执行计划也就是访问路径,但找到书会很多,时间是浪费在搬运书的过程中

如果你和图书管理员说你要1980年清华出版社出版的以sk开头的书籍,这时有多种选择路径,图书管理员可能要盘算一下了,最后选择查索引,只找出了几本书,时间是花费在选择路径上

还有个问题,如果你要以s开头的书,可能只有几本,但也可能会很多,这时一个刚上任的图书管理员回去机械的查索引,运气好只有几本书,会很快但运气不好很多书还不如直接到书架上去查(这就是基于rule的缺点),一个工作多年的管理员,会知道大概查询书有多少,如果他估计会很多,他会直接去查书架(这就是基于cost,收集表的统计信息),问题是这个工作多年的管理员因某些原因很久没有上班了,图书馆又进了很多书,或又转移了很多书,下次查询时他很能会选择错误的路径,这就是基于cost的不稳定性和需要定时维护的缺点,管理员需要不断的去了解书的库存状况,当图书馆很大时会很费时会影响工作。

版权声明:研究技术的朋友,多多分享:-)

VC添加ESXi异常datacenter.queryconnectioninfo

将 ESXi 主机添加到 vCenter Server 清单失败并出现错误: 在 vCenter Server 上为对象调用“datacenter.queryconnectioninfo”失败 (20...
  • libingk9999
  • libingk9999
  • 2016年09月23日 18:11
  • 1026

ESXi开启SSH功能

涉及到的VMware ESXI版本 ESXi 4.1 ESXi 5.1 ESXi 5.5 设置方法: 打开vSphere——配置——安全配置文件——属性 选择S...
  • libingk9999
  • libingk9999
  • 2015年11月12日 14:56
  • 534

Vmware vSphere(Esxi)常见问题汇总

启用客户机操作系统和远程控制台之间的复制和粘贴操作 解决方法:要在客户机操作系统和远程控制台之间进行复制和粘贴,必须使用 vSphere Client 启用复制和粘贴操作。 步骤 使用 ...
  • libingk9999
  • libingk9999
  • 2015年11月17日 19:17
  • 460

VMware vCenter 5.5搭建手册

VC的搭建涉及到SQL Server数据库的搭建,而SQL Server又分为以下三种: 单点数据库 集群的数据库 VC自带的数据库 其中1、3适合测试系统,生产系统建议使用集...
  • libingk9999
  • libingk9999
  • 2015年11月12日 17:36
  • 2135

共享不同系统版本打印机

操作系统分为64位和32位,如果打印机服务器安装的是32位驱动,那么64位系统的用户就无法连接到打印机了。 用户在操作的时候就会出现客户端添加打印机出现报错:   此时再重新部署一个新的打印...
  • libingk9999
  • libingk9999
  • 2015年11月17日 19:18
  • 386

一个很复杂SQL存储过程的编写

IF EXISTS (SELECT * FROM sysobjects WHERE type = P AND name = RoleMenu_ADD)    BEGIN        PRINT Dr...
  • jacky4955
  • jacky4955
  • 2008年11月06日 13:26
  • 1873

进程和线程的一个简单形象的解释

转眼暑假一过,2015年的校招即将开启大幕,身为计算机专业的朋友们,在面试中是不是经常会被问到一个问题:进程和线程的区别,今日偶然看到阮一峰的博客,他用一个很好的类比把他们解释的清晰易懂,会不会突然让...
  • baigoocn
  • baigoocn
  • 2014年07月28日 21:53
  • 1783

时间戳

下面这些话,对时间戳的解释真的是很通俗易懂!!!! 媒体内容在播放时,最令人头痛的就是音视频不同步。 从技术上来说,解决音视频同步问题的最佳方案就是时间戳:首先选择一个参考时钟(要求参考时...
  • libingk9999
  • libingk9999
  • 2015年11月17日 19:16
  • 329

GPARTED扩展Linux系统盘

如果你的Linux系统在安装的时候选择了逻辑卷管理,那么这篇文章对你来说就没什么作用。本篇文章适合没有用逻辑卷管理的Linux操作系统。 首先下载一个光盘镜像,下载地址为http://sourcef...
  • libingk9999
  • libingk9999
  • 2015年11月16日 23:19
  • 957

ORACLE PL/SQL是如何运行的

PL/SQL 引擎[PL/SQL engine]是用户定义,编译,及运行 PL/SQL 程序单元的工具。 图中 显示了应用程序向 Oracle 数据库发送了一个过程调用。PL/SQL 过程在 SGA ...
  • kechengtan
  • kechengtan
  • 2011年03月14日 11:16
  • 2713
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL的运行过程(好形象)
举报原因:
原因补充:

(最多只允许输入30个字)