国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL Server中統計每個表行數的快速方法

2020-07-25 12:54:17
字體:
來源:轉載
供稿:網友

我們都知道用聚合函數count()可以統計表的行數。如果需要統計數據庫每個表各自的行數(DBA可能有這種需求),用count()函數就必須為每個表生成一個動態SQL語句并執行,才能得到結果。以前在互聯網上看到有一種很好的解決方法,忘記出處了,寫下來分享一下。

該方法利用了sysindexes 系統表提供的rows字段。rows字段記錄了索引的數據級的行數。解決方法的代碼如下:

復制代碼 代碼如下:

select schema_name(t.schema_id) as [Schema], t.name as TableName,i.rows as [RowCount]

from sys.tables as t, sysindexes as i

where t.object_id = i.id and i.indid <=1


該方法連接了sys.tables視圖,從中找出表名和schema_id,再通過schema_name函數獲取表的架構名。篩選條件i.indid <=1 只選聚集索引或者堆,每個表至少有一個堆或者聚集索引,從而保證為每個表返回一行。以下是在我的AdventureWorks數據庫中運行該查詢返回的部分結果:
復制代碼 代碼如下:

Schema                  TableName              RowCount
―――――― 主站蜘蛛池模板: 定兴县| 尼勒克县| 合肥市| 田阳县| 新巴尔虎左旗| 喀喇沁旗| 南宁市| 洛宁县| 金门县| 长白| 平远县| 北宁市| 瑞丽市| 邻水| 普洱| 大兴区| 密云县| 宜宾县| 长宁县| 肥西县| 刚察县| 社会| 钦州市| 新野县| 科尔| 北海市| 丽江市| 怀化市| 三都| 龙里县| 镇康县| 皋兰县| 克山县| 公安县| 休宁县| 都昌县| 鄯善县| 增城市| 合江县| 饶阳县| 鹰潭市|