select top 10 object_name(id) as tablename from sysindexes group by object_name(id) order by sum(used) desc
DECLARE @object_id INT=0; DECLARE @sql NVARCHAR(MAX)=''; select TOP 1 @object_id=id from sysindexes s order by s.reserved DESCSET @sql='SELECT TOP 10 name FROM sys.columns WHERE OBJECT_ID='+CAST(@object_id AS NVARCHAR); EXEC(@sql)
IF OBJECT_ID('tb')IS NOT NULL DROP TABLE tb GO CREATE TABLE tb ( 表名 SYSNAME, 记录数 INT, 保留空间 NVARCHAR(10), 使用空间 VARCHAR(10), 索引使用空间 VARCHAR(10), 未用空间 VARCHAR(10) ) EXEC sp_MSForEachTable @command1=N'insert tb exec sp_spaceused ''?''' SELECT TOP 10* FROM tb ORDER BY 使用空间 DESC,记录数 DESC
from sysindexes
group by object_name(id)
order by sum(used) desc
DECLARE @sql NVARCHAR(MAX)='';
select TOP 1 @object_id=id
from sysindexes s
order by s.reserved DESCSET @sql='SELECT TOP 10 name
FROM sys.columns
WHERE OBJECT_ID='+CAST(@object_id AS NVARCHAR);
EXEC(@sql)
DROP TABLE tb
GO
CREATE TABLE tb
(
表名 SYSNAME, 记录数 INT,
保留空间 NVARCHAR(10),
使用空间 VARCHAR(10),
索引使用空间 VARCHAR(10),
未用空间 VARCHAR(10)
)
EXEC sp_MSForEachTable @command1=N'insert tb exec sp_spaceused ''?'''
SELECT TOP 10*
FROM tb
ORDER BY 使用空间 DESC,记录数 DESC