简单版
USE DataBase
GO
SELECT TOP(1000) A.name, B.rows
FROM sys.Objects AS A WITH(NOLOCK)
INNER JOIN sys.partitions AS B WITH(NOLOCK) -- 每个表/索引在各个分区上的信息(其中包含行数)
ON A.object_id = B.object_id
WHERE a.type = 'U' -- User Table
完整版
USE DataBase
GO
SELECT TOP(1000) A.name, SUM(B.rows) AS [RowCount]
FROM sys.Objects AS A WITH(NOLOCK)
INNER JOIN sys.partitions AS B WITH(NOLOCK) -- 每个表/索引在各个分区上的信息(其中包含行数)
ON A.object_id = B.object_id
WHERE a.type = 'U' -- User Table
AND index_id < 2
GROUP BY a.schema_id, a.name