码迷,mamicode.com
首页 > 数据库 > 详细

MySQL--索引

时间:2017-03-24 17:54:40      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:ash   sel   tree   arc   最新版   定义   varchar   语句   hash   

  • 索引概述

    1) 所有MySQL列类型都可以被索引,对相关列使用索引是提高SELECT操作性能的最佳途径。

    2) 根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种存储引擎对每个表至少支持16个索引,总索引长度至少为256字节。大多数存储引擎有更高的限制。

    3) MyISAM和InnoDB存储引擎的表默认创建的都是BTREE索引。

    4) MySQL目前还不支持函数索引,但是支持前缀索引,即对索引字段的前N个字符创建索引。前缀索引的长度跟存储引擎相关,对于MyISAM存储引擎的表,索引的前缀长度可以达到1000字节字长,而对于InnoDB存储引擎的表,索引的前缀长度最常是767字节。注意前缀的限制应以字节为单位进行测量,而CREATE TABLE 语句中的前缀长度解释为字符数。

    5) MySQL还支持全文本(FULLTEXT)索引,该索引可以用于全文搜索。但是当前最新版本(5.0)中只有MyISAM存储引擎支持FULLTEXT索引,并且只限于VARCHAR,CHAR和TEXT列。索引总是对整个列进行的,不支持局部(前缀)索引。

    6) 也可以为空间列类型创建索引,但是只有MyISAM存储引擎支持空间类型索引,且索引的字段必须是非空的。

    7) 默认情况下,MEMORY存储引擎使用的HASH索引,但也支持BTREE索引。

    8) 索引在创建表的时候可以同时创建,也可以随时增加新的索引。创建新索引的语法为:

            CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name

            [USING index_type]

            ON tbl_name (index_col_name, ...)

MySQL--索引

标签:ash   sel   tree   arc   最新版   定义   varchar   语句   hash   

原文地址:http://www.cnblogs.com/microcat/p/6612398.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!