首頁 >資料庫 >mysql教程 >如何有效率地統計所有SQL Server資料庫表的行數?

如何有效率地統計所有SQL Server資料庫表的行數?

Linda Hamilton
Linda Hamilton原創
2025-01-08 22:53:44332瀏覽

How Can I Efficiently Count Rows in All SQL Server Database Tables?

有效決定 SQL Server 表中的行數

資料庫管理員經常需要檢查其 SQL Server 資料庫中的資料量。 本文提供了一種識別具有非零行數的表的解決方案,這可能會觸發資料庫重新初始化。

以下 SQL 腳本提供了一個簡化的方法:

<code class="language-sql">CREATE TABLE #counts (table_name VARCHAR(255), row_count INT);

EXEC sp_MSForEachTable @command1='INSERT #counts (table_name, row_count) SELECT ''?'', COUNT(*) FROM ?';

SELECT table_name, row_count FROM #counts ORDER BY table_name, row_count DESC;

DROP TABLE #counts;</code>

此腳本使用 sp_MSForEachTable 迭代每個表。 對於每個表,它都會計算行數並將表名稱和行數插入臨時表 #counts.

結果按表名稱和行數(降序)排序,提供了資料分佈的清晰概述。

要計算整個資料庫的總行數,請加入以下語句:

<code class="language-sql">SELECT SUM(row_count) AS total_row_count FROM #counts;</code>

這有效地總結了整個資料庫的大小。 該腳本使資料庫管理員能夠有效地監控資料量、識別空表並通知資料庫維護和重新初始化決策。

以上是如何有效率地統計所有SQL Server資料庫表的行數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn