Monday, September 22, 2014

Fastest way to row count all tables in a Database SQL Server

--Full Database
SELECT QUOTENAME(SCHEMA_NAME(sOBJ.schema_id)) + '.' + QUOTENAME(sOBJ.NAME) AS [TableName]
 ,SUM(sPTN.Rows) AS [RowCount]
FROM sys.objects AS sOBJ
INNER JOIN sys.partitions AS sPTN ON sOBJ.object_id = sPTN.object_id
WHERE sOBJ.type = 'U'
 AND sOBJ.is_ms_shipped = 0x0
 AND index_id < 2 -- 0:Heap, 1:Clustered
GROUP BY sOBJ.schema_id
 ,sOBJ.NAME
ORDER BY [TableName]
GO

-----------------------------------------------------------
-- For Individual Schema**
SELECT QUOTENAME(SCHEMA_NAME(sOBJ.schema_id)) + '.' + QUOTENAME(sOBJ.NAME) AS [TableName]
 ,SUM(sPTN.Rows) AS [RowCount]
FROM sys.objects AS sOBJ
INNER JOIN sys.partitions AS sPTN ON sOBJ.object_id = sPTN.object_id
WHERE sOBJ.type = 'U'
 AND sOBJ.is_ms_shipped = 0x0
 AND index_id < 2 -- 0:Heap, 1:Clustered
 AND QUOTENAME(SCHEMA_NAME(sOBJ.schema_id)) = '[YOURSCHEMANAMEHERE]'
GROUP BY sOBJ.schema_id
 ,sOBJ.NAME
ORDER BY [TableName]
GO

No comments:

Post a Comment