需求:根据传入的参数,将数据查询出来,处理后,存入新表,如数据已存在,则更新,如数据不存在,则插入。

--门户存储过程包体

CREATE OR REPLACE PACKAGE BODY PORTALATATISTICSPACKAGE AS

procedure PORTALATATISTICSList(app_id IN VARCHAR2,startTime IN VARCHAR2,endTime IN VARCHAR2) AS

REGION_COUNT NUMBER;

BEGIN

--查询门户及业务系统登录情况,将记录保存在I中

for i in(SELECT row_.*, rownum FROM (

SELECT l.REGION,

r.name,

count((case

when l.log_type = '1' then

l.usercode

end)) as portal_login_num,

count((case

when l.app_id = app_id then

l.usercode

end)) as bus_system_login_num

FROM (select distinct usercode,

username,

region,

region_name,

log_type,

operate_type,

to_char(operate_time, 'yyyymmdd') as operate_time,

app_id

from uum211.UUM_USER_LOG u

where (u.log_type = '1' and u.operate_type = '登录')

or (log_type = '3')) l,

uum_region r

WHERE l.OPERATE_TIME BETWEEN startTime AND endTime

and r.code = l.region

GROUP BY l.REGION, r.name

) row_

WHERE rownum <= 100) loop

--查询当前记录是否存在

SELECT COUNT(1) INTO REGION_COUNT FROM UUM_PORTAL_STATISTICS WHERE region = I.region;

IF REGION_COUNT > 0 THEN

--更新物理表

UPDATE UUM_PORTAL_STATISTICS SET portal_login_num = I.portal_login_num,bus_system_login_num = I.bus_system_login_num WHERE region=I.region;

ELSE

--数据插入物理表

INSERT INTO UUM_PORTAL_STATISTICS(region,region_name,portal_login_num,bus_system_login_num) VALUES(I.region,I.name,I.portal_login_num,I.bus_system_login_num);

END IF;

END LOOP;

COMMIT;

END PORTALATATISTICSList;

END PORTALATATISTICSPACKAGE;

oracle存储过程备份,Oracle存储过程(二)相关推荐

  1. oracle adg 备份,Oracle Physical Dataguard环境使用RMAN备份和恢复

    Oracle Physical Dataguard环境使用RMAN备份和恢复 由于Physical Dataguard使用的是块恢复技术来保持和PRIMARY的一致性,因此可以在STANDBY 上进行 ...

  2. oracle分区备份,oracle分区表备份,只还原1个分区

    oracle分区表备份,只还原1个分区 2016-06-06 oracle分区表备份,只还原1个分区,使用statistics=none,也就是不导出统计信息. alter table ANONYMO ...

  3. oracle 差分备份,Oracle数据库RMAN备份与恢复:备份与恢复(手机搬家)

    摘要:针对Oracle数据库,说明备份与恢复的重要性,讨论了如何定制恰当的备份策略,以RMAN为例,分别从改变数据库的归档模式.创建RMAN用户并授权,创建恢复目录并注册目标数据库,备份与恢复数据库文 ...

  4. oracle预备份,oracle自动备份

    本文章详细介绍备份过程中遇到的坑. 导出: expdp vids/vids123@orclvids directory=dpdata dumpfile=db20200311214001.dmp log ...

  5. 记录——oracle数据库备份

    oracle数据库备份 Oracle数据库的三种标准的备份方法: 1.导出/导入(EXP/IMP). 2.热备份. 3.冷备份. 注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一.导出/导 ...

  6. Oracle的备份——EXP

    Oracle的备份 Oracle备份 注意事项 Oracle备份命令--exp Oracle的备份脚本 注意事项 Windows Linux 定时备份 注意事项 Windows下的定时备份 Linux ...

  7. Oracle 存储过程,Hibernate 调用存储过程,JDBC调用存储过程,Oracle 动态SQL

    Oracle 存储过程学习 目录 Oracle 存储过程........................................................................ ...

  8. oracle中调用过程,oracle中如何调用存储过程

    oracle中如何调用存储过程 发布时间:2020-03-08 03:28:03 来源:51CTO 阅读:511 作者:lxg290 一.通过pls块来调用存储过程: declare p_dzno v ...

  9. oracle存储过程 论文,Oracle中基于Java的存储过程开发_计算机论文

    论文导读::存储过程是一种数据库对象,将执行计划存储在数据库的服务器中,它的执行速度比独立执行同样的程序要快.任何一个设计良好的数据库应用程序都应该用到存储过程.存储过程可以使得对数据库的管理.显示关 ...

  10. oracle接收输入参数,Oracle带输入输出参数存储过程(包括sql分页功能)

    记录一下,免得以后忘记了又要到处去找. begin /*这里不能直接执行select语句但可以直接执行update.delete.insert语句*/ end里面不能接执行select语句,声明会话级 ...

最新文章

  1. java 读取txt,java读取大文件
  2. java contains_Java基础教程|生成不重复随机数 java
  3. 火了,挡不住了:Facebook Move编程语言入门
  4. Xamarin.Forms 中iOS通过URL Scheme判断应用是否安装
  5. MyBatis多表查询之XML和注解实现(resultMap结果集映射配置数据库字段与实体类属性一一映射)
  6. [ASP.NET Core 3.1]浏览器嗅探解决部分浏览器丢失Cookie问
  7. Spring Cloud构建微服务架构:分布式配置中心【Dalston版】
  8. 获取Flex SDK加载进度的方法
  9. c语言自动拷贝u盘文件,写了一个偷偷拷贝老师U盘所有文件的程序……蛋疼……………...
  10. jquery-动效方法-animate
  11. Java利用jenkins做项目的自动化部署
  12. Django 模板标签 换行导致异常的处理 linebreaksbr
  13. Oracle常见索引扫描方式总结
  14. linux vim -b详解,linux vim
  15. 图片URL转换为base64的两种方式
  16. 数字图像处理编程入门笔记
  17. 写好数学建模竞赛论文的那些事
  18. 看完《我的前半生》的些许感悟
  19. 题解 UVA12304 【2D Geometry 110 in 1!】
  20. 极致cms精仿小黑猿资源网源码

热门文章

  1. 3-12岁经典必读书
  2. 码农们:完美主义也是一种错
  3. 转:初学shell脚本--shell语法使用
  4. 控制台打印_星星助手1S·便携式智能液晶电视串口工具 打印信息查看指令发送...
  5. 计算机知识提炼,2017计算机考研:操作系统复习策略及重要知识点提炼
  6. c++ string split_闲话Python之砍瓜切菜split()
  7. 【转】响应式布局和自适应布局详解
  8. 【转】python eval
  9. ORACLE 10G R1手工创建数据库步骤
  10. Slowquery图形化显示MySQL慢日志工具