mysql索引类型normal,unique,full text
转自:http://blog.csdn.net/cuidiwhere/article/details/8452997
问题1: MySQL索引类型normal,unique,full text的区别是什么?
normal:表示普通索引
unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique
full textl: 表示 全文搜索的索引。 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。用在比较短的文本,如果就一两行字的,普通的 INDEX 也可以。
总结,索引的类别由建立索引的字段内容特性来决定,通常normal最常见。
详细信息参考:http://blog.sina.com.cn/s/blog_887d00920100wgf3.html
问题2: 在实际操作过程中,应该选取表中哪些字段作为索引?
为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索引和创建什么类型的索引,有7大原则:
1.选择唯一性索引2.为经常需要排序、分组和联合操作的字段建立索引3.为常作为查询条件的字段建立索引4.限制索引的数目5.尽量使用数据量少的索引6.尽量使用前缀来索引7.删除不再使用或者很少使用的索引
详细信息参考:http://blog.sina.com.cn/s/blog_887d00920100wgf1.html
进阶:
1. 理解Mysql索引与优化: http://www.cnblogs.com/hustcat/archive/2009/10/28/1591648.html
2. mysql索引背后的数据结构与原理 http://dotnet.cnblogs.com/page/151329/
3. 索引采用的数据结构 B-Tree http://kb.cnblogs.com/page/45712/
mysql索引类型normal,unique,full text
标签:
小编还为您整理了以下内容,可能对您也有帮助:
mysql索引类型 normal方式btree 什么意思
问题1:mysql索引类型normal,unique,full text的区别是什么?
normal:表示普通索引
unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique
full textl: 表示 全文搜索的索引。 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。用在比较短的文本,如果就一两行字的,普通的 INDEX 也可以。
总结,索引的类别由建立索引的字段内容特性来决定,通常normal最常见。
问题2:在实际操作过程中,应该选取表中哪些字段作为索引?
为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索引和创建什么类型的索引,有7大原则:
1.选择唯一性索引
2.为经常需要排序、分组和联合操作的字段建立索引
3.为常作为查询条件的字段建立索引
4.*索引的数目
5.尽量使用数据量少的索引
6.尽量使用前缀来索引
7.删除不再使用或者很少使用的索引
mysql索引类型 normal方式btree 什么意思
问题1:mysql索引类型normal,unique,full text的区别是什么?
normal:表示普通索引
unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique
full textl: 表示 全文搜索的索引。 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。用在比较短的文本,如果就一两行字的,普通的 INDEX 也可以。
总结,索引的类别由建立索引的字段内容特性来决定,通常normal最常见。
问题2:在实际操作过程中,应该选取表中哪些字段作为索引?
为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索引和创建什么类型的索引,有7大原则:
1.选择唯一性索引
2.为经常需要排序、分组和联合操作的字段建立索引
3.为常作为查询条件的字段建立索引
4.*索引的数目
5.尽量使用数据量少的索引
6.尽量使用前缀来索引
7.删除不再使用或者很少使用的索引
索引类型有哪几种
索引类型主要有7种,相关内容如下:
1.主键索引(Primary Key Index):主键索引是一种唯一性索引,用于标识每条记录的唯一性。在数据库表中,主键索引的值不能重复,可以加快数据的检索速度和数据的唯一性约束。
2.唯一索引(Unique Index):唯一索引要求索引列的值在整个表中是唯一的,但允许存在空值。唯一索引可以提高数据的查询效率,同时也可以在插入或更新数据时对索引列进行唯一性检查。
3.普通索引(Normal Index):普通索引也称为非唯一索引,它不强制索引列的唯一性。普通索引可以加快数据的检索速度,但允许存在重复的索引值。
4.全文索引(Full-Text Index):全文索引是一种用于全文搜索的索引类型,主要用于对文本内容进行搜索。全文索引能够实现更加精确和高效的文本匹配,支持模糊搜索、关键词提取等功能。
5.组合索引(Composite Index):组合索引是指在多个列上创建的索引,可以提高多个列的查询效率。组合索引的创建顺序和查询条件的顺序有关,可以根据具体的查询需求选择合适的组合索引。
6.空间索引(Spatial Index):空间索引主要用于对具有地理位置信息的数据进行索引和查询,支持范围搜索、最近邻搜索等操作。空间索引可以处理包括点、线和多边形等空间数据类型。
7.散列索引(Hash Index):散列索引利用哈希函数对索引列的值进行散列运算,然后将散列值与索引项建立映射关系。散列索引适用于等值查询,但不适用于范围查询。
MYSQL的各个索引类型有什么区别?
PRIMARY, INDEX, UNIQUE 这3种是一类
PRIMARY 主键。 就是 唯一 且 不能为空。
INDEX 索引,普通的
UNIQUE 唯一索引。 不允许有重复。
FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。
举个例子来说,比如你在为某商场做一个会员卡的系统。
这个系统有一个会员表
有下列字段:
会员编号 INT
会员姓名 VARCHAR(10)
会员身份证号码 VARCHAR(18)
会员电话 VARCHAR(10)
会员住址 VARCHAR(50)
会员备注信息 TEXT
那么这个 会员编号,作为主键,使用 PRIMARY
会员姓名 如果要建索引的话,那么就是普通的 INDEX
会员身份证号码 如果要建索引的话,那么可以选择 UNIQUE (唯一的,不允许重复)
会员备注信息 , 如果需要建索引的话,可以选择 FULLTEXT,全文搜索。
不过 FULLTEXT 用于搜索很长一篇文章的时候,效果最好。
用在比较短的文本,如果就一两行字的,普通的 INDEX 也可以。