为了账号安全,请及时绑定邮箱和手机立即绑定

如何在MySQL中查看数据库或表的索引?

如何在MySQL中查看数据库或表的索引?

繁星淼淼 2020-02-04 14:37:21
如何查看我的数据库上是否有索引?一张特定的桌子怎么样?
查看完整描述

3 回答

?
慕工程0101907

TA贡献1887条经验 获得超5个赞

要查看特定表的索引,请使用SHOW INDEX:


SHOW INDEX FROM yourtable;

要查看特定模式中所有表的索引,可以使用INFORMATION_SCHEMA中的STATISTICS表:


SELECT DISTINCT

    TABLE_NAME,

    INDEX_NAME

FROM INFORMATION_SCHEMA.STATISTICS

WHERE TABLE_SCHEMA = 'your_schema';

删除where子句将为您显示所有架构中的所有索引。


查看完整回答
反对 回复 2020-02-04
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

如果要一次查看所有数据库中的所有索引:


use information_schema;

SELECT * FROM statistics;


查看完整回答
反对 回复 2020-02-04
?
蓝山帝景

TA贡献1843条经验 获得超7个赞

您可以使用此查询获取索引号以及指定数据库中每个表的索引名。


SELECT TABLE_NAME,

       COUNT(1) index_count,

       GROUP_CONCAT(DISTINCT(index_name) SEPARATOR ',\n ') indexes

FROM INFORMATION_SCHEMA.STATISTICS

WHERE TABLE_SCHEMA = 'mydb'

      AND INDEX_NAME != 'primary'

GROUP BY TABLE_NAME

ORDER BY COUNT(1) DESC;


查看完整回答
反对 回复 2020-02-04
  • 3 回答
  • 0 关注
  • 838 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信