从MySQL的information_schema系统数据库中获取表的元数据信息
-- 查询指定数据库中特定表的详细信息
-- 包括数据库名、表名、记录数、数据容量和索引容量
SELECT table_schema AS '数据库', -- 数据库名称table_name AS '表名', -- 表名称table_rows AS '记录数', -- 表中的记录行数(近似值)TRUNCATE(data_length / 1024 / 1024, 2) AS '数据容量(MB)', -- 数据大小,转换为MB并保留2位小数TRUNCATE(index_length / 1024 / 1024, 2) AS '索引容量(MB)' -- 索引大小,转换为MB并保留2位小数
FROM information_schema.TABLES -- MySQL系统表,存储所有表的元数据信息
WHERE table_schema = 'global' -- 筛选特定数据库AND table_name = 'menu' -- 筛选特定表
ORDER BY data_length DESC, -- 按数据大小降序排列index_length DESC; -- 按索引大小降序排列
这个查询的主要功能是:
从MySQL的information_schema系统数据库中获取表的元数据信息
筛选出'、global'数据库中的'menu'表
显示该表的基本信息,包括记录数和存储空间占用情况
将数据大小和索引大小以MB为单位显示,并保留两位小数
注意:table_rows字段显示的是MySQL优化器估算的近似行数,可能与实际行数略有差异。