牛骨文教育服务平台(让学习变的简单)
博文笔记

SQL Server 快速获取表的行数

创建时间:2015-07-07 投稿人: 浏览次数:149

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




声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。