SQL Server 快速获取表的行数

3365人阅读 评论(0) 收藏 举报
分类:

统计表的行数,这个大家都知道使用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

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1033553次
    • 积分:13866
    • 等级:
    • 排名:第897名
    • 原创:301篇
    • 转载:105篇
    • 译文:4篇
    • 评论:522条
    文章分类
    最新评论