SQL Server 快速获取表的行数

统计表的行数,这个大家都知道使用select count(*) from table ,但是随着表的增长,这个统计的效率越来越低了。


试下下面的语句吧,能快速获取多少行,还能提供一些其他表信息,如索引类型,分区数等


SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

-- 快速获取表信息.
SELECT Object_schema_name(p.object_id) AS [Schema],
       Object_name(p.object_id)        AS [Table],
       i.name                          AS [Index],
       p.partition_number,
       p.rows                          AS [Row Count],
       i.type_desc                     AS [Index Type]
FROM   sys.partitions p
       INNER JOIN sys.indexes i
               ON p.object_id = i.object_id
                  AND p.index_id = i.index_id
WHERE  Object_schema_name(p.object_id) <> 'sys'
     --  AND Object_name(p.object_id) = 'table_1' --获取某个表
ORDER  BY [Schema],
          [Table],
          [Index]




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值