sql >> Base de Datos >  >> RDS >> Sqlserver

SQL Server 2008:tengo 1000 tablas, necesito saber qué tablas tienen datos

Pruebe esto:le da el nombre de la tabla y el número de filas:

SELECT 
    t.NAME AS TableName,
    SUM(p.rows) AS [RowCount]
FROM 
    sys.tables t
INNER JOIN      
    sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN 
    sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
WHERE   
    i.index_id <= 1
GROUP BY 
    t.NAME, i.object_id, i.index_id, i.name 
ORDER BY 
    SUM(p.rows) DESC

Muestra todas las tablas y sus recuentos de filas en una sola salida.