【SQL Server】统计表记录数

本文介绍了在SQL Server中统计表记录数的多种方法,包括使用sp_spaceused存储过程、sys.dm_db_partition_stats和sys.partitions系统视图。同时,讨论了sysindexes视图的局限性,并提供了查询数据库中所有表记录数的技巧。在面对空间管理问题时,这些方法有助于进行有效的空间统计和清理操作。
摘要由CSDN通过智能技术生成

      说起统计表的记录数,第一印象就是count(*), 弊端这里就不多说了,这里将为大家介绍一些常用的查询表记录数的系统视图。

      首先,介绍系统存储过程sp_spaceused, 返回结果包括行数、保留的磁盘空间以及当前数据库中的表、索引视图或 Service Broker 队列所使用的磁盘空间,或由整个数据库保留和使用的磁盘空间。使用起来很简单,直接加需要统计的表名即刻。

EXEC sp_spaceused 'Table_Name';

除了表的记录数,以上语句会返回很多空间相关的信息(这里暂不做介绍)。为了只获取返回的记录数信息,查看了sp_spaceused的源码(喜欢作啊~~),从中抽取了只用于统计记录数的相关表/视图。

方法一 , 使用系统视图sys.dm_db_partition_stats查询记录数。

SELECT sum(row_count) as ROW_COUNT FROM sys.dm_db_partition_stats WITH (NOLOCK) WHERE index_id < 2 and object_id = OBJECT_ID('Table_Name')

方法二 ,使用系统视图sys.partitions查询记录数。

SELECT sum(rows) as ROW_COUNT from sys.partitions WITH 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值