索引被用来快速找出在一个列上用一特定值的行。没有索引,MySQL不得不首先以第一条记录开始并然后读完整个表直到它找出相关的行。表越大,花费时间越多。
如果表对于查询的列有一个索引,MySQL能快速到达一个位置去搜寻到数据文件的中间,没有必要考虑所有数据。如果一个表有1000 行,这比顺序读取至少快100倍。注意你需要存取几乎所有1000行,它较快的顺序读取,因为此时我们避免磁盘寻道。

例如对下面这样的一个student表:

mysql>SELECT * FROM student;

aaarticlea/png;base64,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" alt="" />

这样,我们试图对它进行一个特定查询时,就不得不做一个全表的扫描,速度很慢。
例如,我们查找出所有english成绩不及格的学生:

mysql>SELECT name,english FROM student WHERE english<60;

aaarticlea/png;base64,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" alt="" />

其中,WHERE从句不得不匹配每个记录,以检查是否符合条件。对于这个较小的表也许感觉不到太多的影响。但是对于一个较大的表,例如一个非常大的学校,我们可能需要存储成千上万的记录,这样一个检索的所花的时间是十分可观的。
如果,我们为english列创建一个索引:

mysql>ALTER TABLE student ADD INDEX (english) ;

再执行下述查询:

mysql>SELECT name,english FROM user WHERE english<60;

结果为:

aaarticlea/png;base64,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" alt="" />

可以发现,这个结果与未索引english列之前的不同,它是排序的,原因正式如上所述。

mysql索引对单表查询的影响的更多相关文章

  1. 索引对单表查询的影响(Cost和consistent gets)

    前提:使用system账户登录sql plus. 建表: SQL> create table t2 as select * from dba_objects; 表已创建. 已用时间: 00: 0 ...

  2. mysql 数据操作 单表查询 目录

    mysql 数据操作 单表查询 mysql 数据操作 单表查询 简单查询 避免重复DISTINCT mysql 数据操作 单表查询 通过四则运算查询 mysql 数据操作 单表查询 concat()函 ...

  3. mysql 数据操作 单表查询 where 约束 目录

    mysql 数据操作 单表查询 where约束 between and or mysql 数据操作 单表查询 where约束 is null in mysql 数据操作 单表查询 where约束 li ...

  4. mysql 数据操作 单表查询 group by 分组 目录

    mysql 数据操作 单表查询 group by 介绍 mysql 数据操作 单表查询 group by 聚合函数 mysql 数据操作 单表查询 group by 聚合函数 没有group by情况 ...

  5. MySQL数据库之单表查询中关键字的执行顺序

    目录 MySQL数据库之单表查询中关键字的执行顺序 1 语法顺序 2 执行顺序 3 关键字使用语法 MySQL数据库之单表查询中关键字的执行顺序 1 语法顺序 select distinct from ...

  6. MySQL数据库语法-单表查询练习

    MySQL数据库语法-单表查询练习 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要是对聚合函数和分组的练习. 一.数据表和测试数据准备 /* @author :yinz ...

  7. mysql 基础入门 单表查询

    单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...

  8. MySql分区后创建索引加速单表查询和连表查询

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/konkon2012/article/de ...

  9. mysql数据库之单表查询多表查询

    单表查询 前期表准备 create table emp( id int not null unique auto_increment, name varchar(20) not null, sex e ...

随机推荐

  1. 设置TeeChart的提示文本

    使用第三方Steema的TeeChart控件,设置鼠标放在某一线条点上,显示某一点的数据标签问题(虚线型十字光标基准线,放在线上显示对应点的二维坐标轴数据数据),调用InitTeeChartTipTo ...

  2. python网络编程--socket,网络协议,TCP

    一. 客户端/服务端架构(用到网络通信的地方) 我们使用qq.微信和别人聊天,通过浏览器来浏览页面.看京东的网站,通过优酷.快播(此处只是怀念一下)看片片啥的等等,通过无线打印机来打印一个word文档 ...

  3. 【OCP-12c】2019年CUUG OCP 071考试题库(73题)

    73.Which statement correctly grants a system privilege? A. GRANT CREATE VIEW ON table1 TO user1; B. ...

  4. 如何获取token值

    登录的时候需要拿到token值,需要跟后端配合才能拿到 官方说明: https://developers.weixin.qq.com/miniprogram/dev/api/api-login.htm ...

  5. MySQL , MHA , Haproxy 配置

    1. 基本架构 2. 读端口影射 3. 写端口影射 进行一个Health Check MHA Manager对Master节点MySQL 进行存活监控 读FailOver 1 读FailOver 2 ...

  6. leetcode-888-公平的糖果交换

    题目描述: 爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 块糖的大小,B[j] 是鲍勃拥有的第 j 块糖的大小. 因为他们是朋友,所以他们想交换一个糖果棒,这样交换后,他们都有相同的 ...

  7. 2016级算法第六次上机-B.ModricWang's FFT : EASY VERSION

    1114 ModricWang's FFT EASY VERSION 思路 利用FFT做大整数乘法,实际上是把大整数变成多项式,然后做多项式乘法. 例如,对于\(1234\),改写成\(f(x)=1* ...

  8. C#生成验证码类

    using System;using System.Collections.Generic;using System.Drawing;using System.Drawing.Drawing2D;us ...

  9. Github如何在本地创建一个空的仓库

    1.在任意地方创建文件夹,并进入该文件夹: 2.通过git init命令把该文件夹变成Git可管理的仓库: 3.该文件夹里会多了个.git文件夹,它是Git用来跟踪和管理版本库的: 4.这时候手动把项 ...

  10. springboot(十二)-分布式锁(redis)

    什么是分布式锁? 要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁.进程锁. 线程锁:主要用来给方法.代码块加锁.当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段.线程锁只在同一 ...