最后活跃于 10 months ago

這段 SQL 查詢會列出指定資料庫中每個資料表的名稱、所屬 Schema、行數(Row Count)、總佔用空間(KB)、已使用空間(KB)以及未使用空間(KB),並依據總佔用空間進行降序排序。這對於 資料庫管理與最佳化 非常有用,能幫助 DBA 或開發人員分析表的大小、尋找可能需要清理或最佳化的表,提升資料庫效能。

timmy 修订了这个 Gist 10 months ago. 转到此修订

没有任何变更

timmy 修订了这个 Gist 10 months ago. 转到此修订

没有任何变更

timmy 修订了这个 Gist 10 months ago. 转到此修订

没有任何变更

timmy 修订了这个 Gist 11 months ago. 转到此修订

1 file changed, 22 insertions

database_table_size_report.sql(文件已创建)

@@ -0,0 +1,22 @@
1 + USE [你的資料庫名稱];
2 + SELECT
3 + s.name AS SchemaName,
4 + t.name AS TableName,
5 + p.rows AS RowCounts,
6 + SUM(a.total_pages) * 8 AS TotalSizeKB,
7 + SUM(a.used_pages) * 8 AS UsedSizeKB,
8 + (SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSizeKB
9 + FROM
10 + sys.tables t
11 + INNER JOIN
12 + sys.schemas s ON t.schema_id = s.schema_id
13 + INNER JOIN
14 + sys.partitions p ON t.object_id = p.object_id
15 + INNER JOIN
16 + sys.allocation_units a ON p.partition_id = a.container_id
17 + WHERE
18 + p.index_id IN (0,1) -- 0:堆積表, 1:群集索引
19 + GROUP BY
20 + s.name, t.name, p.rows
21 + ORDER BY
22 + TotalSizeKB DESC;
上一页 下一页