¿Cómo obtener la cantidad de registros de una base de datos?
Para contar la cantidad de registros de cada tabla de una determinada base de datos Microsoft SQL Server se debe ejecutar la siguiente consulta:
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
Esta consulta básicamente hace un join de las tablas 'sys.objects' y 'sys.partitions' (filtrando sólo los objetos que son tablas con type = 'U'). De la tabla 'sys.objects' selecciona la columna 'name' que contiene el nombre del objeto (en este caso el nombre de la tabla) y de la tabla 'sys.partitions' selecciona la columna 'Rows' que contiene la cantidad de registros de la tabla.
Comentarios