- 浏览: 121470 次
- 性别:
- 来自: 上海
文章分类
最新评论
逐个表统计数据行数,使用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时间,统计数据也更新了,大都准确。
但是,还是有问题,起因是分区表,处理方法再研究......
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时间,统计数据也更新了,大都准确。
但是,还是有问题,起因是分区表,处理方法再研究......
发表评论
-
修改Oracle10g的默认8080端口
2013-12-03 01:07 496Oracle10g在安装完成后,默认占用8080端口,而这个 ... -
Oracle的分页查询语句优化
2013-08-07 16:56 782Oracle的分页查询语句基本上可以按照本文给出的格式来进行套 ... -
oracle 回收站管理
2013-04-12 17:02 667oracle10g,在pl/sql中选中删除后会出现类似:BI ... -
plsql中的异常
2013-03-21 17:51 1231如果没有异常,在程序中,应当检查每个命令的成功还是失败,使用异 ... -
sqlldr常规应用 (总结篇)
2012-11-27 15:45 1641标例: load data ... -
在oracle中通过connect by prior来实现递归查询
2012-11-05 22:36 1113Start with...Connect By子句递归查询一般 ... -
分页.
2012-05-25 15:59 632select * from (select rownum as ... -
Oracle维护常用SQL语句
2012-05-11 14:34 7381:查看表空间的名称及大小 select t.ta ... -
SQL语句优化技术分析
2012-05-25 16:00 707SQL语句优化技术分析- - 操作符优化 ... -
有关sqlldr的一个具体应用
2012-04-09 15:59 1129今天接到生管给的生产报表,需要删除2000台SEQ状态下 ... -
oracle11g密码区分大小写问题
2012-03-26 14:05 1411自11g开始,oracle缺省区分帐号的密码大小写(ca ... -
shell远程获取文件
2012-03-26 14:06 995根据输入的参数(文件名称),逐个获取远程主机制定目录的文 ... -
自动取远程服务器的文件到本地的脚本
2012-03-26 14:06 930自动取远程服务器的文件到本地,中间无需人工参与 a. ... -
如何删除所有目录下与目录同名的文件?
2012-03-26 14:06 1245#!/bin/bash for i in $(f ... -
Linux 脚本编写基础
2012-03-22 11:03 18871. Linux 脚本编写基础1.1 语法基本介绍1.1.1 ... -
shell脚本实现查找目录下同名但不同后缀名的文件
2012-03-22 10:59 2532原创作品,允许转载,转载时请务必以超链接形式标明文章 原 ... -
shell获取目录下最新的文件,文件是以日期命名
2012-03-22 10:56 5030shell编程:一个目录下面有很多文件,这些文件都是以日 ... -
PL/SQL教程
2012-03-22 10:55 969课程 一 PL/SQL 基本查 ... -
Oralce中的synonym同义词
2012-02-08 13:49 1040设定同义词,方便使用select * from emp;等 ... -
ORACLE 查询数字串拼接
2011-08-26 17:07 839在SQL server 2000等中,我们常用的字符串拼接方 ...
相关推荐
例如,要获取表中所有记录的总数,可以创建一个CRecordset子类,重写Open函数并执行SQL COUNT(*)语句: ```cpp class CRecordCountSet : public CRecordset { public: CRecordCountSet(CDatabase* pDatabase); ...
3. **SELECT子句使用*的问题**:虽然使用`SELECT *`可以方便地获取所有列,但在实际开发中,为了提高查询效率和节省资源,推荐明确指定需要查询的列名,而不是使用通配符`*`。 #### 二、索引和优化 4. **快速执行...
### Oracle数据库操作命令详解 #### 一、SQLPlus启动与用户连接 - **启动SQLPlus:** - 在DOS环境下通过`sqlplus 用户名/密码 as sysdba`来启动SQLPlus并登录到Oracle数据库。例如,登录系统账户时可使用`c:>...
在本文中,我们将深入探讨如何使用PHP与Oracle数据库进行交互,特别是实现分页显示数据的功能。首先,我们有一个名为`ora_sql`的PHP类,该类封装了与Oracle数据库的基本操作,包括连接、执行SQL语句以及获取查询结果...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,由甲骨文公司开发和维护。它提供了丰富的功能,包括数据存储、管理和检索,适用于各种规模的企业和组织。本篇将深入探讨Oracle数据库的基本查询知识,...
COUNT 函数是 Oracle 数据库中的一个聚集函数,用于计算表中的行数。例如,使用 COUNT 函数可以计算雇员表中的行数。 知识点十:组函数 组函数是 Oracle 数据库中的一个函数,用于对数据进行分组操作。例如,使用 ...
使用`row_count`变量可以获取当前操作影响的记录行数。例如,`row_count:=:system.trigger_record;`会将触发器操作影响的记录数赋值给`row_count`。 2. **设置鼠标状态**: `set_application_property('cursor_...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。对于初学者来说,掌握Oracle数据库的基础命令是学习的关键步骤。以下将详细介绍Oracle数据库的一些常用命令,帮助你快速...
例如,你可以用`SELECT COUNT(*) FROM table`统计表中的记录数,`SELECT MAX(column) FROM table`找出某列的最大值,或者使用`SELECT column1 || ' ' || column2 FROM table`将两列数据连接成一个字符串。...
` 可以获取表中的所有数据,`SELECT column1, column2 FROM table;` 则只选择指定列。 3. 限定返回的行:通过`LIMIT`(在某些数据库系统中)或`ROWNUM`(在Oracle中)限制返回结果的数量。例如,`SELECT * FROM ...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。Java软件工程师在开发过程中,往往需要与数据库进行交互,因此掌握Oracle数据库的基本操作和高级技术至关重要。以下是对...
Oracle数据库在执行SQL查询时,有时会选择不使用已经创建的索引,这可能是由于多种因素导致的。以下是一些常见的原因及其详细解释: 1. **INDEX SKIP SCAN**: 当创建了一个组合索引,但是查询只使用了索引的非第一...
本文档将详细介绍Oracle数据库中用于日常运维优化的一些常用脚本,包括但不限于统计信息更新、SQL查询性能分析以及系统资源监控等方面。 #### 二、更新统计信息 **脚本:** ```sql SQL> analyze table table_name ...
### Oracle数据库SQL性能调优详解 #### 一、选用适合的ORACLE优化器 ORACLE提供了三种优化器供用户选择: 1. **基于规则的优化器(RULE)**:这是一种较为传统的优化方式,它依赖于预定义的规则来确定SQL语句的...
4. 使用自定义函数获取表的记录数: ```sql CREATE OR REPLACE FUNCTION ROOT.GET_TABLE_COUNT(SCHEMA_NAME IN VARCHAR2) RETURN NUMBER IS ... ``` 本文总结了MySQL、Oracle和DM数据库中统计表数据量和条数的方法...
根据提供的信息,我们可以详细解析与Oracle数据库分组查询相关的知识点,并通过具体的练习题目来加深理解。下面将逐一分析每一个题目中的关键知识点。 ### Oracle数据库分组查询知识点详解 #### 1. 查询部门20的...