MySQL 索引的分类
来源:互联网 发布:魔幻笔软件 编辑:程序博客网 时间:2024/06/05 18:44
- MySQL的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引等。本小节将详细讲解这几种索引的含义和特点。
1.普通索引
在创建普通索引时,不附加任何限制条件。这类索引可以创建在任何数据类型中,其值是否唯一和非空由字段本身的完整性约束条件决定。建立索引以后,查询时可以通过索引进行查询。例如,在student表的stu_id字段上建立一个普通索引。查询记录时,就可以根据该索引进行查询。
2.唯一性索引
使用UNIQUE参数可以设置索引为唯一性索引。在创建唯一性索引时,限制该索引的值必须是唯一的。例如,在student表的stu_name字段中创建唯一性索引,那么stu_name字段的值就必需是唯一的。通过唯一性索引,可以更快速地确定某条记录。主键就是一种特殊唯一性索引。
3.全文索引
使用FULLTEXT参数可以设置索引为全文索引。全文索引只能创建在CHAR、VARCHAR或TEXT类型的字段上。查询数据量较大的字符串类型的字段时,使用全文索引可以提高查询速度。例如,student表的information字段是TEXT类型,该字段包含了很多的文字信息。在information字段上建立全文索引后,可以提高查询information字段的速度。MySQL数据库从3.23.23版开始支持全文索引,但只有MyISAM存储引擎支持全文检索。在默认情况下,全文索引的搜索执行方式不区分大小写。但索引的列使用二进制排序后,可以执行区分大小写的全文索引。
4.单列索引 www.2cto.com
在表中的单个字段上创建索引。单列索引只根据该字段进行索引。单列索引可以是普通索引,也可以是唯一性索引,还可以是全文索引。只要保证该索引只对应一个字段 即可。
5.多列索引
多列索引是在表的多个字段上创建一个索引。该索引指向创建时对应的多个字段,可以通过这几个字段进行查询。但是,只有查询条件中使用了这些字段中第一个字段时,索引才会被使用。例如,在表中的id、name和sex字段上建立一个多列索引,那么,只有查询条件使用了id字段时该索引才会被使用。
6.空间索引
使用SPATIAL参数可以设置索引为空间索引。空间索引只能建立在空间数据类型上,这样可以提高系统获取空间数据的效率。MySQL中的空间数据类型包括GEOMETRY和POINT、LINESTRING和POLYGON等。目前只有MyISAM存储引擎支持空间检索,而且索引的字段不能为空值。对于初学者来说,这类索引很少会用到
PS: MySQL创建索引原则
http://blog.csdn.net/csdnones/article/details/50412603
PS: MySQL创建索引
http://blog.csdn.net/csdnones/article/details/50265295
0 0
- MySQL 索引的分类
- mysql中索引的分类及简介
- mysql索引分类
- mysql索引分类
- mysql索引分类
- MYSQL索引分类介绍
- mysql数据库索引分类
- mysql索引含义及分类
- mysql索引的分类... btree hash fulltext rtree
- mysql索引的优点和缺点以及分类
- Oracle 索引的分类
- Oracle 索引的分类
- Oracle 索引的分类
- 索引的分类
- 索引的分类
- sql 索引的分类
- Oracle 索引的分类
- MySQL索引分类和各自用途
- WinForm常用窗体属性及控件
- D2UB
- centos上安装R语言
- Hibernate的学习
- EasyUI+Ajax+Json+一般处理程序实现数据的前台与后台的交互
- MySQL 索引的分类
- [leetcode] 171. Excel Sheet Column Number 解题报告
- tabbarController
- strlen和sizeof的区别
- [spark]倒排索引
- 从servlet视点观察web程序流程
- iOS面试题7
- Struts2之文件上传(单文件/多文件)
- TCP/IP (五) TCP连接的内存使用