视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
简单介绍MySQL中索引的使用方法
2020-11-09 20:59:09 责编:小采
文档


数据库索引是一个数据结构,提高操作的速度,在一个表中可以使用一个或多个列,提供两个快速随机查找和高效的顺序访问记录的基础创建索引。

在创建索引时,它应该被认为是将SQL查询的那些列上创建一个或多个索引的列。

实际上,指数也保持主键或索引字段和指针的实际表中每条记录的表型。

用户无法看到索引,它们只是用来加快查询速度,将用于数据库搜索引擎找到的记录速度非常快。

INSERT和UPDATE语句表上的索引需要更多的时间,成为快速对这些表的SELECT语句。究其原因是,当进行插入或更新,数据库以及需要惰性或更新索引值。
简单的唯一索引:

可以创建一个唯一索引的表。唯一的索引意味着两个行不能拥有相同的索引值。这里是语法来创建索引的表

CREATE UNIQUE INDEX index_name
ON table_name ( column1, column2,...);

可以使用一个或多个列上创建索引。例如,我们可以创建一个索引的使用在表tutorials_tbl的tutorial_author列上

CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author)

可以创建一个简单的索引的表。只要省略UNIQUE关键字的查询创建一个简单的索引。简单的索引允许重复表中的值。

如果你想在一列以降序索引值,可以在列名后添加保留字DESC:

mysql> CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author DESC)

ALTER命令添加和删除索引:

有四种类型的语句表添加索引:

  •     ALTER TABLE tbl_name ADD PRIMARY KEY (column_list) : 这条语句添加一个主键,这意味着索引值必须是唯一的,不能是NULL。
  •     ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 这条语句创建一个索引,其值必须是唯一的(除NULL值,这可能会多次出现)。
  •     ALTER TABLE tbl_name ADD INDEX index_name (column_list): 这增加了一个普通的索引,其中的任何值,可能会出现多于一次。
  •     ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list): 这将创建一个特殊的FULLTEXT索引,用于文本搜索的目的。
  • 下面是这个例子,在现有的表添加索引。

    mysql> ALTER TABLE testalter_tbl ADD INDEX (c);
    
    

    可以删除任何INDEX通过使用DROP子句和使用ALTER命令。试试下面的例子上面创建的索引下降。

    mysql> ALTER TABLE testalter_tbl DROP INDEX (c);
    
    

    可以删除任何INDEX通过使用DROP子句t和使用ALTER命令。试试下面的例子上面创建的索引x。
    ALTER命令来添加和删除PRIMARY KEY:

    您可以添加主键,以及在相同的方式中。但要确保主键这是NOT NULL的列上。

    这是在现有的表添加主键的例子。这将NOT NULL列,然后将其添加为一个主键。

    mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
    mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);
    
    

    可以使用ALTER命令删除主键如下:

    mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;
    
    

    要删除索引,这不是一个PRIMARY KEY,所以必须指定索引的名称。
    显示索引信息:

    您可以使用SHOW INDEX命令,列出所有相关联的索引表。垂直格式输出(指定由\ G)往往是有用的这句话,以避免长时间行重叠:

    试试下面的例子:

    mysql> SHOW INDEX FROM table_name\G
    ........
    
    


    您可能感兴趣的文章:

  • MySQL索引类型总结和使用技巧以及注意事项
  • 解决MySQL中IN子查询会导致无法使用索引问题
  • MySql索引详细介绍及正确使用方法
  • Mysql使用索引实现查询优化
  • Mysql建表与索引使用规范详解
  • Mysql使用索引的正确方法及索引原理详解
  • MySQL索引背后的之使用策略及优化(高性能索引策略)
  • MySQL下使用Inplace和Online方式创建索引的教程
  • MySQL索引使用说明(单列索引和多列索引)
  • mysql索引使用率监控技巧(值得收藏!)
  • 下载本文
    显示全文
    专题