如何在oracle中将一个表的数据统计加入到另一个表中,

比如把每天的数据统计放到月表之中

建议做个后台的crontab任务吧,写一个sql统计脚本,然后通过后台进程定时将统计结果插入到指定的表中,同时生成后台操作日志。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-23
insert into A (select sum(a),avg(a) from B where trunc(dat) = trunc(sysdate))
要插多少个字段根据您A表的构造来定, trunc(sysdate) 取得的就是数据库对应机器的时间(不带时分秒)
第2个回答  2012-03-23
j假设月表为month(总数a,总数b,月份),明细表为detail

insert into month select sum(a),sum(b),'201203' from detail where month=‘201203’;
第3个回答  2011-03-07
用游标吧,放入游标后每条记录作处理,就可以了。

oracle 怎样把一张表中统计到的结果插入到另一张表中,
create table 新表名 as select sum(base) as 总计 from gongzi

数据库,将一个表的某一列的数据和,复制到另一个表的某一个列,如果不...
WHERE O.ORDER_ID = T1.ORDER_ID --这里是oracle数据库中的语法,其它数据库需要的NVL(SUM(T.AMOUT),0)这里转换下,其意思就是,如果总额为空即不存在,那就用0来代替

Oracle统计数据的迁移
中间表用来存储要迁移的统计数据 统计数据都存储在数据字典中 所以在迁移前必须导出到一张中间表 中间表的创建用DBMS_STATS CREATE_STAT_TABLE BEGIN DBMS_STATS CREATE_STAT_TABLE(ownname=> SYSTEM stattab=> STAT_TAB tblspace=> TOOLS );DBMS_OUTPUT PUT_LINE( Create table plete! );END;\/ ...

oracle 根据一个表向另一个表查数据
v_tb yy_b%rowtype;--声明变量v_tb与你所谓的B表类型一致,我这里的yy_b改成你的B表 begin v_tb := null;for cur in(select id from tst order by id) loop--取出A表中的数据 dbms_output.put_line(cur.id||' ');if v_tb.b1>0 then--第二次循环及以后 if (cur.id-1)=v_...

Oracle怎么导入数据
exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件;imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库中。二.语法可以通过在命令行输入 imp help=y 获取imp的语法信息:===C:Documents and Settingsauduser>imp help=yImport: Release 9.0.1.1.1 - Production on 星期二...

Oracle after update触发器如何实现实时统计最新的数据插入到另一张...
自制事务无法提交触发器中的事务。你可以使用语句级触发器。create or replace trigger test after update of gender on a declare cnt number ;begin select count(*) into cnt from a where xxx 统计条件;end ;\/

两个配置相同的oracle数据库,查询同一张表内的数据时。count某字段的值...
执行快的那个有可能创建了索引,或者执行过表分析操作,通常表分析操作会统计表的元信息,包括记录数、表数据占用空间等,而索引上也有表中节点的数量信息。你可以看一下执行计划,通过执行计划就可以知道原因了。

如何将从3个不同的表中查询出的相同字段合并在一个新的表中进行排序
可以使用以下语句(前提要求你的三个表的客户名称,时间,金额的字段类型相同)create table new_table_name select 客户名称,时间,金额 from table_a union select 客户名称,时间,金额 from table_b union select 客户名称,时间,金额 from table_c === 如果要指定某一用户,请自己加上 where 客户名称=...

SQL查询出来的数据为空,然后怎么默认插入到另外一张表
可以用nvl(判断)函数。例如 select nvl(所要的字段,0) from A ;这个就表示如果所要字段 的内容是空的,就显示零。不是空的是默认的数据;

oracle update select from 将其他表分组查询到的结果更新到update的...
update t1 set 数量=(sekect count(1) from t2 where t2.cln1=t1.类别) where exists(select 1 from t2 where t2.cln1=t1.类别)

相似回答