生产环境Oracle中sql优化案例1(关于update与merge)

生产环境Oracle中sql优化案例1一个关于update和merge into的案例案例简介生产原来的sql优化之后的sql为什么这么优化插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入一个关于update和merge into的案例你好! 这是你第一次使用 Markdown编辑器 所
摘要由CSDN通过智能技术生成

1.案例简介与需求

这是一个关于updatemerge更新的sql优化案例,由于生产里面的数据不能随便拿出来,所以我自己造了一些数据。这次的优化只涉及到了一张表,所以需求以及逻辑相对来说较为简单

需求如下:

  1. 一张表里面的数据大概是50万级别的数据量
  2. 需要根据这张表的几个字段进行分组求另外一个字段的平均值
  3. 不新建临时表,就在这张表上进行更新
  4. 里面还涉及到日期的限定条件

能提炼出来的就这么多了,具体看下面的代码

2.先造好表和数据

这些数据是通过随机数造出来的,用来模拟生产的数据

create table MONEY
(
  as_of_date DATE,
  id1        NUMBER,
  id2        NUMBER,
  id3        NUMBER,
  id4        NUMBER,
  id5        NUMBER,
  money      NUMBER
);
truncate table money;
insert into money
  select to_date(round(dbms_random.value(20201001, 20201010)), 'YYYYMMDD') as_of_date,
         round(dbms_random.value(1, 2)) id1,
         round(dbms_random.value(3, 4
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值