gpt4 book ai didi

mysql - MySQL 中如何查看哪些表没有索引

转载 作者:可可西里 更新时间:2023-11-01 06:55:58 26 4
gpt4 key购买 nike

我正在处理一个包含大约 300 个表的数据库,我正在寻找一种方法来查找所有没有索引(不包括 PRIMARY)的表。理想情况下,我想取回一个结果集,该结果集为我提供了每个表的索引数。 我已经尝试过使用这样的查询:

SELECT 
table_name, column_name, index_name, count(table_name) as index_count
FROM
information_schema.statistics
WHERE
index_name != 'primary'
AND
table_schema = 'your_database'
GROUP BY
table_name

但它不会返回准确的结果。任何帮助将不胜感激

最佳答案

这将导致那些表根本没有索引(甚至没有主键)

select * from INFORMATION_SCHEMA.tables
where table_schema = 'your_database'
and table_name not in
(
select table_name -- , count(*)
from (
SELECT table_name, index_name
FROM information_schema.statistics
WHERE table_schema = 'your_database'
GROUP BY table_name, index_name) tab_ind_cols
group by table_name
)

关于mysql - MySQL 中如何查看哪些表没有索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7233703/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com