如何快速获得SQL Server 表行数

通常我们都需要查询一个表的总行数,很多人都喜欢用select count(*) from Table.如果表数据非常大的话,这样的查询是很耗费时间和资源的。

 

其实有两个办法可以快速的查询到SQL Server的表数据。

1. sp_spaceused:其中有一列是rows,如果输入的表对象的话,那么就会获得这个表的行数,速度非常快。

rows

char(11)

表中现有的行数。如果指定的对象是 Service Broker 队列,该列将指示队列中的消息数。

 

2.从sys.sysindexes中获取。其中也有一个列为rowcnt,Counts the total number of inserted, deleted, or updated rows since the last time statistics were updated for the table

 

使用下面的语句:

---replace the tablename when you use this script
  select id,object_name(id) as tableName,indid,rows,rowcnt
  from sys.sysindexes where id =object_id('tablename') and   indid in(0,1)

 

通过这个统计结果可能不是太准确,因为系统统计信息有个时间差

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值