最後活躍 10 months ago

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

timmy 已修改 10 months ago. 還原成這個修訂版本

沒有任何變更

timmy 已修改 10 months ago. 還原成這個修訂版本

沒有任何變更

timmy 已修改 10 months ago. 還原成這個修訂版本

沒有任何變更

timmy 已修改 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;
上一頁 下一頁