sql server分析表大小

使用自动存储过程查询

EXEC sp_spaceused 'YourTableName';

  • rows:表中的行数。
  • reserved:表占用的总空间(包括数据和索引)。
  • data:表数据占用的空间。
  • index_size:索引占用的空间。
  • unused:未使用的空间。

数据本身大小不大,一条数据平均大小就是382784/251396=1.4K,注意是索引大,宽表都会建立很多索引

使用sql查询

SELECT t.NAME AS TableName, p.rows AS RowCounts, SUM(a.total_pages) * 8 AS TotalSpaceKB, SUM(a.used_pages) * 8 AS UsedSpaceKB, (SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB FROM sys.tables t JOIN sys.indexes i ON t.object_id = i.object_id JOIN sys.partitions p ON i.object_id = p.object_id AND i.index_id = p.index_id JOIN sys.allocation_units a ON p.partition_id = a.container_id WHERE t.NAME = 'YourTableName' GROUP BY t.Name, p.Rows;

  • TableName:表名。
  • RowCounts:表中的行数。
  • TotalSpaceKB:表占用的总空间(单位:KB)。
  • UsedSpaceKB:已使用的空间(单位:KB)。
  • UnusedSpaceKB:未使用的空间(单位:KB)
相关推荐
weixin_4365250734 分钟前
jar包启动使用logs替换nohup日志文件
java·linux·数据库
7***998735 分钟前
Redis——Windows安装
数据库·windows·redis
Elastic 中国社区官方博客42 分钟前
Elasticsearch:在隔离环境中安装 ELSER 模型
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
321茄子43 分钟前
MySQL 索引失效
数据库·mysql
v***7941 小时前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb
散修-小胖子1 小时前
TPCC-MySQL快速上手
数据库·mysql·oracle
roman_日积跬步-终至千里1 小时前
【模式识别与机器学习(18)】关联规则深入浅出教程
数据库·机器学习·oracle
杨DaB1 小时前
【MySQL】06 视图 view
数据库·mysql
星空露珠1 小时前
lua获取随机颜色rgb转换hex
数据结构·数据库·算法·游戏·lua
专注VB编程开发20年1 小时前
VB.NET多线程处理每个Web请求,ThreadPool.QueueUserWorkItem要求是object
数据库·vb.net·webserver