美文网首页
oracle统计数据每日增量

oracle统计数据每日增量

作者: 蛋皮皮652 | 来源:发表于2021-03-03 17:20 被阅读0次

有个需求是统计数据库的每日数据增量,oracle有个查询所有表的sql如下,

select t.table_name,t.num_rows from user_tables t;

查询出来的结果如下图所示:

稍微改造一下就可以查出所有表的所有数据,如下:

SELECT sum(num_rows) sum from user_tables;

然后想着写个存储过程,创建个表E_DATA_DAILY存储时间和数量,这里我存的表如下:

建表语句:

CREATE TABLE "E_DATA_DAILY" (

"time" DATE NULL ,

"count" NUMBER NULL

)

存储过程编写的内容如下:作用是先查出当时的数据总量后插入到E_DATA_DAILY表中方便以后进行查看。

CREATE OR REPLACE

PROCEDURE "GETCOUNT" AS

BEGIN

EXECUTE IMMEDIATE 'insert into E_DATA_DAILY VALUES (sysdate,(SELECT sum(num_rows) sum from user_tables))';

COMMIT;

END;

创建定时任务:

DECLARE

X NUMBER;

BEGIN

SYS.DBMS_JOB.SUBMIT

( job       => X

,what      => 'GETCOUNT;'

,next_date => sysdate

,interval  => 'TRUNC(sysdate) + 1 +1/ (24)'

);

commit;

END;

查询定时任务:

select * from user_jobs;

这样就可以每天一点查出数据存入到表中!这样是不是很简单呢?喜欢请关注“蛋皮皮”微信公众号!有事没事点个赞,点个再看~~~

相关文章

网友评论

      本文标题:oracle统计数据每日增量

      本文链接:https://www.haomeiwen.com/subject/mxfcqltx.html