`

获取oracle数据库中表中记录行数,不使用select count()方式

 
阅读更多
逐个表统计数据行数,使用Select count语句统计,比较蛮烦,而且慢,可以使用如下语句直接用户下的所有表的数据行数。
      select TABLE_NAME, T.num_rows, T.last_analyzed  from tabs T
    但是,从tabs表中获取的数据不是非常准确,在tabs表中存在一个字段last_analyzed,有最后分析的日期,一般都不是最新,所以导致数据不是非常准确,可以通过在command下面执行
      EXEC dbms_stats.gather_table_stats('【空间名称】','【tablename】',cascade=>true);
    可以刷新tabs表中的num_rows列,以及最后更新时间。

    1、单个表统计数据的统计数据更新
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0
Connected as oa_oa

SQL> EXEC dbms_stats.gather_table_stats('CORDYS','TASK_LIST_WAIT',cascade=>true);
PL/SQL procedure successfully completed

    2、更新整个用户所有表的统计数据更新

SQL> EXEC dbms_stats.gather_schema_stats('【username】',estimate_percent=>100,cascade=> TRUE);

    执行完毕之后,发现last_analyzed变成了刚才执行 dbms_stats时间,统计数据也更新了,大都准确。

    但是,还是有问题,起因是分区表,处理方法再研究......
分享到:
评论

相关推荐

    Oracle数据访问 获取记录总数

    例如,要获取表中所有记录的总数,可以创建一个CRecordset子类,重写Open函数并执行SQL COUNT(*)语句: ```cpp class CRecordCountSet : public CRecordset { public: CRecordCountSet(CDatabase* pDatabase); ...

    oracle数据库开发面试必备

    3. **SELECT子句使用*的问题**:虽然使用`SELECT *`可以方便地获取所有列,但在实际开发中,为了提高查询效率和节省资源,推荐明确指定需要查询的列名,而不是使用通配符`*`。 #### 二、索引和优化 4. **快速执行...

    Oracle数据库操作命令集合

    ### Oracle数据库操作命令详解 #### 一、SQLPlus启动与用户连接 - **启动SQLPlus:** - 在DOS环境下通过`sqlplus 用户名/密码 as sysdba`来启动SQLPlus并登录到Oracle数据库。例如,登录系统账户时可使用`c:>...

    分页显示Oracle数据库记录的PHP类

    在本文中,我们将深入探讨如何使用PHP与Oracle数据库进行交互,特别是实现分页显示数据的功能。首先,我们有一个名为`ora_sql`的PHP类,该类封装了与Oracle数据库的基本操作,包括连接、执行SQL语句以及获取查询结果...

    Oracle数据库基本查询知识

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,由甲骨文公司开发和维护。它提供了丰富的功能,包括数据存储、管理和检索,适用于各种规模的企业和组织。本篇将深入探讨Oracle数据库的基本查询知识,...

    东软oracle在线期中考试一.docx

    COUNT 函数是 Oracle 数据库中的一个聚集函数,用于计算表中的行数。例如,使用 COUNT 函数可以计算雇员表中的行数。 知识点十:组函数 组函数是 Oracle 数据库中的一个函数,用于对数据进行分组操作。例如,使用 ...

    Oracle数据库-PL、SQL使用方法整理[参考].pdf

    使用`row_count`变量可以获取当前操作影响的记录行数。例如,`row_count:=:system.trigger_record;`会将触发器操作影响的记录数赋值给`row_count`。 2. **设置鼠标状态**: `set_application_property('cursor_...

    Oracle数据库命令(PPT)

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。对于初学者来说,掌握Oracle数据库的基础命令是学习的关键步骤。以下将详细介绍Oracle数据库的一些常用命令,帮助你快速...

    SQL和Oracle数据库函数说明

    例如,你可以用`SELECT COUNT(*) FROM table`统计表中的记录数,`SELECT MAX(column) FROM table`找出某列的最大值,或者使用`SELECT column1 || ' ' || column2 FROM table`将两列数据连接成一个字符串。...

    Oracle数据库所有查询命令[借鉴].pdf

    ` 可以获取表中的所有数据,`SELECT column1, column2 FROM table;` 则只选择指定列。 3. 限定返回的行:通过`LIMIT`(在某些数据库系统中)或`ROWNUM`(在Oracle中)限制返回结果的数量。例如,`SELECT * FROM ...

    oracle数据库1-5

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。Java软件工程师在开发过程中,往往需要与数据库进行交互,因此掌握Oracle数据库的基本操作和高级技术至关重要。以下是对...

    oracle不走索引可能原因.docx

    Oracle数据库在执行SQL查询时,有时会选择不使用已经创建的索引,这可能是由于多种因素导致的。以下是一些常见的原因及其详细解释: 1. **INDEX SKIP SCAN**: 当创建了一个组合索引,但是查询只使用了索引的非第一...

    oracle数据库常用优化脚本

    本文档将详细介绍Oracle数据库中用于日常运维优化的一些常用脚本,包括但不限于统计信息更新、SQL查询性能分析以及系统资源监控等方面。 #### 二、更新统计信息 **脚本:** ```sql SQL> analyze table table_name ...

    Oracle数据库Sql性能调优

    ### Oracle数据库SQL性能调优详解 #### 一、选用适合的ORACLE优化器 ORACLE提供了三种优化器供用户选择: 1. **基于规则的优化器(RULE)**:这是一种较为传统的优化方式,它依赖于预定义的规则来确定SQL语句的...

    Oracle Mysql DM等数据库统计表数据量和条数.docx

    4. 使用自定义函数获取表的记录数: ```sql CREATE OR REPLACE FUNCTION ROOT.GET_TABLE_COUNT(SCHEMA_NAME IN VARCHAR2) RETURN NUMBER IS ... ``` 本文总结了MySQL、Oracle和DM数据库中统计表数据量和条数的方法...

    Oracle数据库分组查询练习题(包答案)

    根据提供的信息,我们可以详细解析与Oracle数据库分组查询相关的知识点,并通过具体的练习题目来加深理解。下面将逐一分析每一个题目中的关键知识点。 ### Oracle数据库分组查询知识点详解 #### 1. 查询部门20的...

Global site tag (gtag.js) - Google Analytics