返回顶部
首页 > 资讯 > 数据库 >MySQL查看索引语句:SHOW INDEX 详细讲解
  • 160
分享到

MySQL查看索引语句:SHOW INDEX 详细讲解

mysql数据库java 2023-09-20 19:09:10 160人浏览 薄情痞子
摘要

概述: SHOW INDEX语句是Mysql中用于查看表索引信息的语句。它提供了有关表中索引的详细信息,包括索引名称、索引类型、关联的列等。以下是SHOW INDEX的详细说明: 语法: SHOW INDEX FROM table_name

概述:

SHOW INDEX语句是Mysql中用于查看表索引信息的语句。它提供了有关表中索引的详细信息,包括索引名称、索引类型、关联的列等。以下是SHOW INDEX的详细说明:

语法:

SHOW INDEX FROM table_name [FROM db_name] [WHERE condition];

参数说明:

  • table_name:
    • 需要查询索引的表名。
  • db_name:
    • (可选)数据库名。如果你已经在某个数据库上下文中,可以省略此参数。
  • condition:
    • (可选)可以添加WHERE子句来筛选索引信息,比如根据索引名称、索引类型等进行筛选。

SHOW INDEX语句返回以下信息:

  • table:
    • 表名。
  • non_unique:
    • 是否允许重复值。如果值为1,表示允许重复值;如果值为0,表示不允许重复值(唯一索引)。
  • key_name:
    • 索引名称。主键索引名通常为PRIMARY。
  • seq_in_index:
    • 索引中的列的序号。对于组合索引,这表示列在索引中的位置。
  • column_name:
    • 列名,索引涉及的列。
  • collation:
    • 排序规则。A表示升序,NULL表示不可排序。
  • cardinality:
    • 索引的基数。这是一个估算值,表示索引中唯一值的数量。这个值对于查询优化器选择索引非常重要。
  • sub_part:
    • 索引的前缀长度。对于部分索引,这表示索引的前缀长度。
  • packed:
    • 索引是否被压缩。如果索引未被压缩,该列的值为NULL。
  • null:
    • 列是否允许包含NULL值。
  • index_type:
    • 索引类型。常见的类型有BTREE、HASH、FULLTEXT等。
  • comment:
    • 索引的备注。

示例:

下面是一个名为examples的表,其中包含各种类型的索引:主键索引、唯一索引、普通索引、前缀索引和联合索引。

CREATE TABLE examples (  id INT AUTO_INCREMENT,  name VARCHAR(255),  description TEXT,  cateGory VARCHAR(255),  price DECIMAL(10, 2),  PRIMARY KEY (id),  UNIQUE KEY idx_name (name),  KEY idx_category (category),  KEY idx_category_price (category, price),  KEY idx_name_prefix (name(10))) ENGINE=InnoDB;

在这个示例中,我们创建了一个名为examples的表,包含以下类型的索引:

  • 主键索引(PRIMARY KEY):
    • id列是主键索引。主键索引要求唯一且不允许NULL值。
  • 唯一索引(UNIQUE KEY):
    • name列是唯一索引。唯一索引要求唯一,但允许NULL值。
  • 普通索引(KEY):
    • category列是普通索引。普通索引允许重复值和NULL值。
  • 联合索引(KEY):
    • category和price列组成了一个联合索引。这允许根据这两个列的组合进行更快的查询。
  • 前缀索引(KEY):
    • name列的前10个字符被用作前缀索引。前缀索引允许在索引较长的字符串列时节省存储空间和提高查询速度,但可能会影响查询准确性。

现在,使用SHOW INDEX语句查询examples表的索引信息:

SHOW INDEX FROM examples;

输出结果(以表格形式表示):

在SHOW INDEX的输出中,你可以看到examples表的各种类型索引:

  • 主键索引(PRIMARY KEY):
    • 在key_name列中,PRIMARY关键字表示该行对应的是主键索引。non_unique列的值为0,说明主键索引的值必须是唯一的。在此例中,主键索引是id列。
  • 唯一索引(UNIQUE KEY):
    • 在key_name列中,自定义的索引名称(例如idx_name)表示这是一个唯一索引。non_unique列的值为0,说明唯一索引的值必须是唯一的,但允许NULL值。在此例中,唯一索引是name列。
  • 普通索引(KEY):
    • 在key_name列中,自定义的索引名称(例如idx_category)表示这是一个普通索引。non_unique列的值为1,说明普通索引允许重复值和NULL值。在此例中,普通索引是category列。
  • 前缀索引(KEY):
    • 前缀索引的识别方法与普通索引相同,但在sub_part列中有一个值,表示使用列值的前多少个字符作为前缀索引。在此例中,idx_name_prefix是一个前缀索引,它将name列的前10个字符作为索引。
  • 联合索引(KEY):
    • 联合索引可以通过key_name列中的相同索引名称以及不同的seq_in_index值来识别。在seq_in_index列中,数字表示列在联合索引中的顺序。在此例中,idx_category_price是一个联合索引,包括category和price两个列。
    • 在这两行中,key_name列的值都是idx_category_price,表明它们属于同一个索引。seq_in_index列的值分别为1和2,表示category和price这两个列在联合索引中的顺序。 

注意,SHOW INDEX语句及返回的结果列可能会因mysql版本的不同而有所差异。本解释基于Mysql 8.0版本。在其他版本中,返回的结果列可能有所不同。要获取与您的MySQL版本对应的详细信息,请查阅官方文档。

 

来源地址:https://blog.csdn.net/jiayoudangdang/article/details/130387723

您可能感兴趣的文档:

--结束END--

本文标题: MySQL查看索引语句:SHOW INDEX 详细讲解

本文链接: https://lsjlt.com/news/413207.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL查看索引语句:SHOW INDEX 详细讲解
    概述: SHOW INDEX语句是MySQL中用于查看表索引信息的语句。它提供了有关表中索引的详细信息,包括索引名称、索引类型、关联的列等。以下是SHOW INDEX的详细说明: 语法: SHOW INDEX FROM table_name...
    99+
    2023-09-20
    mysql 数据库 java
  • MySQL中的索引index(超详细)
    概念: 在MySQL中,索引(index)是一种特殊的数据结构,它能够加快数据库中数据的检索速度。索引可以看做是一本书的目录,它提供了一种快速查找数据的方式。 MySQL中的索引是建立在一张表的一列或多列上的,用于加快对表中数据的查找速度...
    99+
    2023-09-02
    mysql 数据库
  • 图文并茂地讲解Mysql索引(index)
    目录前言1. 索引概述1.1 什么是索引?1.2 使用索引和不使用索引的区别1.3 索引的特点2. 索引结构2.1 概述2.2 二叉树2.3 B-Tree2.4 B+Tree2.5 ...
    99+
    2022-11-13
    mysql怎么使用索引 mysql的索引 mysql索引代码
  • MySQL查看或显示数据库(SHOW DATABASES语句)
    数据库可以看作是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据。 在 MySQL 数据库中存在系统数据库和自定义数据库,系统数据库是在安装 MySQL...
    99+
    2023-10-08
    数据库 mysql sql
  • MySQL基础(六)-索引(index)详解
    目录 一、什么是索引? 二、索引的实现原理 三、在MySQL中,主键、unique字段上会自动添加索引。 四、索引的创建与删除 创建索引: 删除索引: 五、查看SQL语句是否使用了索引 六、索引的失效 失效的第一种情况:模糊匹配当中以“%”...
    99+
    2023-09-01
    sql 数据库
  • MySQL索引详细解析
    目录1. mysql 索引的最左前缀原则2. 前缀索引3. 索引下推(ICP——Index Condition Pushdown)4. 查看 MySQL 语句是否用到索引5. 为什么官方建议用自增...
    99+
    2024-04-02
  • MySql中sql语句执行过程详细讲解
    目录前言:sql语句的执行过程:查询缓存:分析器:优化器:执行器:总结前言: 很多人都在使用mysql数据库,但是很少有人能够说出来整个sql语句的执行过程是怎样的,如果不了解执行过程的话,就很难进行sql语句的优化处理...
    99+
    2023-02-21
    mysql的sql语句的执行流程 mysql的sql执行顺序 mysql如何执行语句
  • db2怎么查看索引详细信息
    要查看DB2索引的详细信息,您可以使用以下SQL查询语句: SELECT INDNAME, COLNAMES, COLSEQ...
    99+
    2024-03-11
    db2
  • MySQL索引失效原因以及SQL查询语句不走索引原因详解
    目录前言1. 隐式的类型转换,索引失效2. 查询条件包含 or,可能导致索引失效3. like 通配符可能导致索引失效4. 查询条件不满足联合索引的最左匹配原则5. 在索引列login_time上使用 mysql 的内置...
    99+
    2023-03-06
    mysql索引在什么时候失效 mysql 索引失效 mysql索引失效怎么办
  • mysql索引的查询语句怎么写
    这篇文章主要介绍“mysql索引的查询语句怎么写”,在日常操作中,相信很多人在mysql索引的查询语句怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql索引的查询...
    99+
    2024-04-02
  • MySQL查看数据库状态命令详细讲解
    目录前言show statusshow processlist;show slave status \G;总结前言 数据查询语言(DQL: Data Query Language):其语句,也称为“数据检索语...
    99+
    2023-03-06
    mysql查看数据库状态命令是什么 MySQL查看数据库 mysql查看数据库状态信息
  • 如何实现MySQL中查看表的索引信息的语句?
    标题:如何实现MySQL中查看表的索引信息的语句?在MySQL中,索引是一种非常重要的数据结构,它能够提高查询效率、加速数据检索过程,而对于开发人员和数据库管理员来说,了解表的索引信息是非常重要的。在MySQL中,可以使用SHOW INDE...
    99+
    2023-11-08
    MySQL 索引 查看
  • C语言详细讲解while语句的用法
    目录while语句格式例题1例题2例题3while语句格式 格式: while(表达式){    语句块} 1、先执行while(表达式),如条件为真执行语句块;...
    99+
    2024-04-02
  • C语言详细讲解if语句与switch语句的用法
    目录一、if 语句二、switch 语句三、错误提示一、if 语句 格式: if(写条件){输出内容}条件为真运行这个。 else {输出内容}否则输出这个。 代码: #includ...
    99+
    2024-04-02
  • mysql添加索引方法详解(Navicat可视化加索引与sql语句加索引)
    目录使用索引的场景:下面是通过sql语句添加索引的方法:1、普通索引1)、直接创建索引2)、修改表结构的方式添加索引3)、删除索引2、唯一索引1)、创建唯一索引2)、修改表结构3、主键索引4、组合索引5、全文索引1)、创...
    99+
    2024-04-02
  • MySQL索引结构详细解析
    目录简介索引结构(树)为什么用树,而不用哈希表BTree索引B+Tree索引聚簇索引与非聚簇索引索引分类性能分析索引创建场景简介 在数据之外,数据库系统还维护着满足特定查找算法的数据...
    99+
    2024-04-02
  • MySQL索引事务详细解析
    目录一、索引 1.概念2.作用3.缺陷4.使用场景5.使用1.查看索引2.创建索引3.删除索引6.案例二、事务1.为什么使用事务2.事务的概念3.使用4.特性一、索引 1.概念 索...
    99+
    2024-04-02
  • C语言详细讲解循环语句的妙用
    目录一、循环语句分析二、do ... while 语句的循环方式三、while 语句的循环方式四、for 语句的循环方式五、break和 continue 的区别六、do 和 bre...
    99+
    2024-04-02
  • MySQL-5.6.34通过show global status like 来查看sql语句的执行情
    需求 老大:zain啊,咱们的数据库今天有多少查询语句啊?我 :额,稍等,我看看啊; 心想,{尼玛,我怎么知道有多少select语句啊} 那么问题来了,如何查看MySQL数据库的...
    99+
    2024-04-02
  • MySQL中怎么使用SHOW DATABASES语句查看或显示数据库
    今天就跟大家聊聊有关MySQL中怎么使用SHOW DATABASES语句查看或显示数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  实例1:查...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作