SQL CREATE INDEX 语法:在表上创建一个简单的索引。

允许使用重复的值:

CREATE INDEX index_name
ON table_name (column_name)

如果您希望以降序索引某个列中的值,您可以在列名称之后添加保留字 DESC:

CREATE INDEX PersonIndex
ON Person (LastName DESC) 

创建表的时候直接指定
          CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL, INDEX [indexName] (ID) );

如果是字符串类型

CREATE INDEX indexName ON
mytable(username(length));

如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB和TEXT类型,必须指定length这样会加速索引查询速度,还会减少索引文件的大小,提高INSERT的更新速度。

SQL CREATE UNIQUE INDEX 语法:
          在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。

CREATE UNIQUE INDEX index_name
ON table_name (column_name)

组合索引

CREATE INDEX PersonIndex
ON Person (LastName, FirstName)

删除索引

DROP INDEX [indexName] ON mytable; 

举一个例:

CREATE TABLE People (last_name varchar(50)    not null,first_name varchar(50)    not null,dob        date                   not null,gender     enum('m', 'f')    not null,
);

在last_name、first_name和dob上建立一个组合索引。

注意:
使用索引有以下一些限制:
(1) 查询必须从索引的最左边的列开始。例如你不能利用索引查找在某一天出生的人。
(2) 不能跳过某一索引列。例如,你不能利用索引查找last name为Smith且出生于某一天的人。
(3) 存储引擎不能使用索引中范围条件右边的列。例如,如果你的查询语句为WHERE last_name="Smith" AND first_name LIKE 'J%' AND dob='1976-12-23',则该查询只会使用索引中的前两列,因为LIKE是范围查询。

如下情况可使用该索引:

(1)匹配全值(Match the full value):对索引中的所有列都指定具体的值。例如,上述索引可以帮助你查找出生于1960-01-01的Cuba Allen。

(2)匹配最左前缀(Match a leftmost prefix):你可以利用索引查找last name为Allen的人,仅仅使用索引中的第1列。

(3)匹配列前缀(Match a column prefix):例如,你可以利用索引查找last name以J开始的人,这仅仅使用索引中的第1列。

(4)匹配值的范围查询(Match a range of values):可以利用索引查找last name在Allen和Barrymore之间的人,仅仅使用索引中第1列。

(5)匹配部分精确而其它部分进行范围匹配(Match one part exactly and match a range on another part):可以利用索引查找last name为Allen,而first name以字母K开始的人。

(6)仅对索引进行查询(Index-only queries):如果查询的列都位于索引中,则不需要读取元组的值。

参考资料:

http://www.php100.com/html/webkaifa/database/Mysql/2013/0316/12223.html

http://blog.csdn.net/gzh0222/article/details/7564607

http://wenku.baidu.com/link?url=Ev2lb1_sF9LOR0tmPIJD3U4oYgSRx5Pj7X2AK0zvv9wJUZqm3WKnIpqhDNm0N4fp5J8BjSX1oNEwRmgUHbRCZGXy2w0GfpxepDLvxUbTNje
http://book.51cto.com/art/201012/240959.htm

http://book.2cto.com/201207/639.html

输入验证码进入下载列表选普通不限速下载
打开就知道怎么用,附名称和下载地址
fqrouter:http://www.400gb.com/file/77885845
EasyVPN:http://www.400gb.com/file/71244208
SuperVPN:http://www.400gb.com/file/71245132
Hola:http://www.400gb.com/file/71246083
电脑使用的webfreer,最新版本的,解压缩后直接使用
http://www.400gb.com/file/69045621

MySQL之索引的使用相关推荐

  1. 面试官问:为什么MySQL的索引不采用Kafka的索引机制

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 第一眼看到这个问题,也是很迷惑的,谁没事会问这种问题.然而,事实上 ...

  2. 面试官:为什么MySQL的索引要使用B+树,而不是其它树?比如B树?

    点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 来源:https://dwz.cn/exC8JdQS InnoDB的一棵B+树可以存放多少行数 ...

  3. 为了把mysql的索引底层原理讲清楚,我把计算机翻了个底朝天

    来自:非科班的科班 什么是索引 概念:索引是提高mysql查询效率的数据结构.总的一句话概括就是索引是一种数据结构. 数据库查询是数据库的最主要功能之一.设计者们都希望查询数据的速度能尽可能的快,因此 ...

  4. mysql多索引结构_MySQL 索引结构

    谈到 MYSQL 索引服务端的同学应该是熟悉的不能再熟悉,新建表的时候怎么着都知道先来个主键索引,对于经常查询的列也会加个索引加快查询速度.那么 MYSQL 索引都有哪些类型呢?索引结构是什么样的呢? ...

  5. mysql repair 索引_mysql 创建索引、重建索引、查询索引、删除索引 转自:http://www.phpernote.com/mysql/942.html...

    本篇文章主要是对MySQL索引操作方法做了一下总结,包括创建索引.重建索引.查询索引.删除索引的操作.以下所列示例中中 `table_name` 表示数据表名,`index_name` 表示索引名,c ...

  6. mysql简单索引_mysql简单索引

    mysql的索引是在存储引擎实现的,而不是在服务器层,因此不是标准的. b-tree: 大部分的mysql支持b-tree索引,archive知道mysql5.1才支持,而且仅仅是支持单个auto_i ...

  7. mysql单列索引和多列索引_mysql 单列索引与多列索引

    以下的文章主要介绍的是MySQL数据库索引类型,其中包括普通索引,唯一索引,主键索引与主键索引,以及对这些索引的实际应用或是创建有一个详细介绍,以下就是文章的主要内容描述. (1)普通索引 这是最基本 ...

  8. MySQL - 践行索引优化

    文章目录 生猛干货 Pre Table Demo DB Version Case 全值匹配 最左前缀 禁止索引列上做任何操作(计算.函数.(自动or手动)类型转换) 存储引擎不能使用索引中范围条件右边 ...

  9. mysql+零时数据结构,MySql主要索引数据结构

    索引数据结构 1. 二叉搜索树(Binary Search Tree) 二叉搜索树是每个节点最多有两个子节点的树,按照右侧子节点大于本节点,左侧子节点小于本节点的规律排列,可以用作搜索,结构如下图所示 ...

  10. mysql聚集索引可以多列吗_MySQL使用单列索引和多列索引

    讨论MySQL选择索引时单列单列索引和多列索引使用,以及多列索引的最左前缀原则. 1. 单列索引 在性能优化过程中,选择在哪些列上创建索引是最重要的步骤之一.可以考虑使用索引的主要有两种类型的列:在W ...

最新文章

  1. 在idea使用maven工程建立web项目时,启动Tomcat访问不到项目首页。
  2. Swift 中 10 个震惊小伙伴的单行代码
  3. 面试官:你写的单例模式有空指针异常,请你用Volatile改一下。我愣了五分钟...
  4. Hibernate事务处理
  5. [转载]我们应该更依赖手机一点
  6. 亿佰特Lora网关技术为马拉松保驾护航
  7. AutoMapper的使用
  8. 1033. 旧键盘打字(20)
  9. rnn中文语音识别java_语音识别算法阅读之RNN-T-2018
  10. npm下载地址的查询与切换
  11. 使用计算机模拟抛硬币,计算机模拟抛硬币实验学生任务单.pdf
  12. 使用docker安装Jenkins教程
  13. 源码:winamp播放器 C++
  14. QQ被盗后,如何找回好友
  15. 《迅雷链精品课》第八课:迅雷链多链结构
  16. 美通企业周刊 | 湖北与百胜中国签署战略合作协议;喜茶首家环保主题店亮相深圳;万豪2021年将开设中国第400家酒店...
  17. Android——单元测试
  18. 接单,外快开发利器-MyBatis-Plus
  19. 微信小程序 - 手持弹幕 | 全屏炫酷滚屏神器源代码模板,超详细代码和注释复制粘贴即可使用(全屏文字滚动,支持调节滚动速度、字体大小、字体颜色)文字内容横屏滚动,手机变身 LED 屏
  20. app启动页面的问题

热门文章

  1. 设圆半径为5,圆柱高为3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。 编程序,用 scanf 输入数据,输出计算结果。输出时要有文字说明,取小数点后两位数字...
  2. 卫星过顶计算matlab,太阳同步侦察卫星轨道预报算法实现与仿真_问答库
  3. oracle移花接木,移植苹果,Windows PC上安装MacOS
  4. 有理函数积分方法以及待定系数法的无解问题
  5. 符号arg代表的意义
  6. 将DP83848替换成LAN8720配置
  7. 时尚零售商Shein被曝赴美上市搁浅:创始人许仰天疑改国籍
  8. 阿里P8晒1月工资条,看完真的狠狠扎心了…
  9. final、finally、finalize区别
  10. 工控软件及计算机监控系统设计