我们都知道用聚合函数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

-------------------- -------------------- -----------

Sales                      Store                     701

Production              ProductPhoto          101

Production              ProductProductPhoto  504

Sales                      StoreContact          753

Person                    Address                 19614

Production              ProductReview         4

Production              TransactionHistory   113443

Person                   AddressType            6

该方法的优点有:

运行速度非常快。

由于不访问用户表,不会在用户表上放置锁,不会影响用户表的性能。

可以将该查询写成子查询、CTE或者视图,与其它查询结合使用。

Technorati 标签: SQL Server,SQL

server sql 数据总行数_一种快速统计SQL Server每个表行数的方法相关推荐

  1. python统计csv行数_对Python 多线程统计所有csv文件的行数方法详解

    如下所示: #统计某文件夹下的所有csv文件的行数(多线程) import threading import csv import os class MyThreadLine(threading.Th ...

  2. css textarea行数_超级简单:在一个TextArea中如何限制行数和字符数-阿里云开发者社区...

    在网上,已经有很多关于在一个textbox限制允许的字符数量.但是如果需要,在textbox中如何去统计和限制行数呢.这里有一个解决方案,使用客户端的Javascript去限制TextArea的内容为 ...

  3. css textarea行数_超级简单:在一个TextArea中如何限制行数和字符数

    阅读: 1586 评论: 13 作者: 麒麟 发表于 2009-12-21 09:00 原文链接 在网上,已经有很多关于在一个textbox限制允许的字符数量.但是如果需要,在textbox中如何去统 ...

  4. 一种快速统计SQL Server每个表行数的方法

    转载自:http://www.cnblogs.com/kenyang/archive/2013/04/09/3011447.html 我们都知道用聚合函数count()可以统计表的行数.如果需要统计数 ...

  5. postgresql返回行数_怎么优化你的SQL查询?以PostgreSQL为例

    实际工作中,我们每个人难免都会要写SQL,执行SQL,但是有时时候执行非常慢,甚至获得不了结果.这时候你会怎么办?放弃?去苦口婆心的求隔壁房间胡子擦擦的猥琐DBA大叔? NO,正确方法是先检查一下你的 ...

  6. php mssql统计表中的主键个数,MSSQL_SQL Server中统计每个表行数的快速方法,我们都知道用聚合函数count()可 - phpStudy...

    SQL Server中统计每个表行数的快速方法 我们都知道用聚合函数count()可以统计表的行数.如果需要统计数据库每个表各自的行数(DBA可能有这种需求),用count()函数就必须为每个表生成一 ...

  7. 统计内表行数常用的三种方法

    以下是统计内表行数常用的三种方法, 如下:   1.LOOP AT it_itab.    g_lines2 = g_lines2 + 1.    ENDLOOP.    该方法是通过循环内部表自己累 ...

  8. git统计每个人的代码行数_程序员实用工具,推荐一款代码统计神器GitStats

    阅读全文需7分钟,工具很实用. 1. 前言 对于Git项目开发,有一些可视化的工具,如gitk,giggle等,来查看项目的开发历史.但对于大型的项目,这些简单的可视化工具远远不足以了解项目完整的开发 ...

  9. Spark从本地文件中统计包含某个字母的行数

    Spark从本地文件中统计包含某个字母的行数: import org.apache.spark.SparkConf; import org.apache.spark.sql.Dataset; impo ...

  10. android 动画实现倒车,一种快速实现Android车机冷启动全景倒车的方法与流程

    本发明涉及一种快速实现Android车机冷启动全景倒车的方法,属于车辆设备技术领域. 背景技术: 目前市场上的车机在解决倒车辅助系统的冷启动时存在时间较长的弊端,主要原因是由于虚拟机的运行及加载方式导 ...

最新文章

  1. mac、linux 查看端口占用程序
  2. python分割数字_python实现整数拆分,输出拆分序列
  3. springboot中的spring-session用mysql实现session共享实践
  4. VMware搭建Android x86
  5. 为人处事的一些小句子。
  6. Lucene排序以及自定义排序
  7. 【解题报告+感想感言】2019年第十届蓝桥杯【C++省赛B组】【第五题:迷宫】
  8. 对dropout的理解详细版
  9. VS2015使用小技巧
  10. wine最小化游戏后无法恢复的问题
  11. 有关Quartz.NET,与一线码农大佬对个线?
  12. 什么是工业级交换机?工业交换机作用有哪些?
  13. 给Android程序员的一些面试建议,附带学习经验
  14. python槽格式里填啥_用于填充插槽的网络挂钩
  15. 深入理解PHP之数组(遍历顺序)
  16. 海龟绘图两小时上手C语言 - 0 引言
  17. labview创建case结构_操作者框架(AF)系列视频学习笔记之视频三:创建简易操作者...
  18. java实现beamsearch_Beam Search、Tensorflow下如何构建Beam Search
  19. 中兴iptv机顶盒破解教程图文:亲测中兴B760EV3、B860A、B860AV1.1完美安装应用!非ttl破解![转]
  20. 数据结构——查找与排序

热门文章

  1. 小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1、SpringBoot2.x课程介绍和高手系列知识点...
  2. Java与算法之(2) - 快速排序
  3. 我的Android进阶之旅------gt;Android嵌入图像InsetDrawable的使用方法
  4. UVa 1658,Admiral (拆点+限制最小费用流)
  5. socket 和 SocketServer 模块
  6. Js之History对象
  7. 通过自动化接口调用InstallShield 报错的解决办法
  8. spring配置redis(xml+java方式)(最底层)
  9. React-Native 在 mac 下 build 问题
  10. eclipse data source explorer 编辑触发器