加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_商丘站长网 (https://www.0370zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MYSQL的索引

发布时间:2022-11-01 12:38:33 所属栏目:MySql教程 来源:
导读:  一、MYSQL索引的分类

  索引用于快速查找具有特定列值的行。如果没有索引,MySQL必须从第一行开始,然后读取整个表以查找相关行。表越大,成本越高。如果表中有相关??列的索引,MySQL可以快速确定要在数据
  一、MYSQL索引的分类
 
  索引用于快速查找具有特定列值的行。如果没有索引,MySQL必须从第一行开始,然后读取整个表以查找相关行。表越大,成本越高。如果表中有相关??列的索引,MySQL可以快速确定要在数据文件中间寻找的位置,而无需查看所有数据。这比按顺序读取每一行要快得多。
 
  MYSQL的索引主要分为主键索引(PRIMARY KEY),唯一索引(UNIQUE),普通索引(INDEX)和全文索引(FULLTEXT)。
 
  主键索引:它是一种特殊的唯一索引mysql表索引,不允许有空值。一般是在建表的时候指定了主键,就会创建主键索引,CREATE INDEX不能用来创建主键索引,使用ALTER TABLE来代替。
 
  唯一索引:与普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须一。
 
  普通索引:这是最基本的索引,它没有任何限制。
 
  全文索引:FULLTEXT索引用于全文搜索。只有InnoDB和MyISAM存储引擎支持FULLTEXT索引和仅适用于CHAR,VARCHAR和TEXT列。
 
  二、索引的创建方式
 
  (1)主键索引的创建方式:
 
  方式1:ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )
 
  比如:ALTER TABLE usersADD PRIMARY KEY ( id)
 
  方式2:创建表的时候指定主键
 
  (2)唯一索引的创建方式
 
  方式1:ALTER TABLE `table_name` ADD UNIQUE [indexName] (`column`)
 
  比如:ALTER TABLE usersADD UNIQUE ( id)
 
  方式2:CREATE UNIQUE INDEX index_name ON table_name (column_name)
 
  比如:CREATE UNIQUE INDEX index_users ON users(id)
 
  (3)普通索引的创建方式
 
  方式1:ALTER TABLE `table_name` ADD INDEX index_name ( `column` )
 
  比如:ALTER TABLE usersADD INDEX index_users( id)
 
  方式2:CREATE INDEX index_name ON table_name (column_name)
 
  比如:CREATE INDEX index_users ON users(column_name)
 
  (4)全文索引的创建方式
 
  方式1:ALTER TABLE `table_name` ADD FULLTEXT ( `column` )
 
  比如:ALTER TABLE users ADD FULLTEXT ( id )
 

(编辑:开发网_商丘站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!