mysql如何查看表的索引

使用SHOW INDEX可查看表的所有索引信息,包含索引名、列名、类型等;2. SHOW CREATE table显示建表语句,直观查看索引定义;3. 查询information_schema.STATISTICS适合编程获取索引详情;4. DESCRIBE仅显示主键和索引标记,适合快速浏览。

mysql如何查看表的索引

mysql 中查看表的索引,有几种常用方法,可以直接通过 SQL 命令查询,也可以使用客户端工具辅助查看。以下是几种最实用的方式:

1. 使用 SHOW INDEX 语句

这是最直接的方法,可以查看指定表的所有索引信息。

SHOW INDEX FROM 表名 [FROM 数据库名];
— 或者
SHOW KEYS FROM 表名 [FROM 数据库名];

示例:

SHOW INDEX FROM users FROM mydb;

如果不指定数据库名,默认使用当前选中的数据库。

返回结果包含以下关键字段:

  • Table:表名
  • Non_unique:是否非唯一索引(1=是,0=否)
  • Key_name:索引名称(PRIMARY 表示主键)
  • Seq_in_index:列在索引中的顺序
  • Column_name:索引对应的列名
  • Index_type:索引类型(如 BTREE、FULLTEXT、HASH 等)

2. 使用 SHOW CREATE TABLE 查看建表语句

该命令会显示创建表时的完整 SQL,包括所有索引定义。

SHOW CREATE TABLE 表名;

示例:

SHOW CREATE TABLE users;

输出中可以看到 PRIMARY KEY、UNIQUE、INDEX、KEY 等索引定义,适合快速查看结构。

mysql如何查看表的索引

纳米搜索

纳米搜索:360推出的新一代AI搜索引擎

mysql如何查看表的索引 30

查看详情 mysql如何查看表的索引

3. 查询 information_schema 系统表

适用于需要编程或批量处理场景,可以灵活筛选。

select
INDEX_NAME,
COLUMN_NAME,
NON_UNIQUE,
SEQ_IN_INDEX,
INDEX_TYPE
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = ‘数据库名’
AND TABLE_NAME = ‘表名’
ORDER BY SEQ_IN_INDEX;

示例:

SELECT INDEX_NAME, COLUMN_NAME, INDEX_TYPE
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = ‘mydb’ AND TABLE_NAME = ‘users’;

这种方式便于集成到脚本或程序中。

4. 使用 DESCRIBE 快速查看(有限信息)

DESCRIBE 可以快速查看表结构,但对索引支持有限,仅能识别主键和部分索引标记。

DESCRIBE 表名;
— 或简写
DESC 表名;

输出中 Key 列会显示:

  • PRI:主键
  • MUL:非唯一索引(多个列可能共享)
  • UNI:唯一索引

不能查看复合索引细节,适合快速浏览。

基本上就这些。日常开发中,SHOW INDEX 和 SHOW CREATE TABLE 最常用,information_schema 更适合自动化处理。根据需要选择即可。

上一篇
下一篇
text=ZqhQzanResources