主页 > 知识库 > Oracle多表级联更新详解

Oracle多表级联更新详解

热门标签:开封智能外呼系统厂家 百度地图标注素材 征服眼公司地图标注 征服者火车站地图标注 word地图标注方向 外呼线路外显本地号码 人工智能地图标注自己能做吗 阿尔巴尼亚地图标注app 美图秀秀地图标注

用游标实现,我觉得绝对这种方法比较安全的。
--首先定一个游标把需要用到的一些数据存放到游标中:

复制代码 代码如下:

declare
  CURSOR D_CURSOR_CUS_INFO IS
    select t3.id_           as id_,
           t3.owe_money_    as owe_money_,
           a.heatingArea    as heating_area_
    from T_CUS_OWE_MONEY_2 t2
    left join T_CUS_OWE_MONEY_3 t3 on t2.id_= t3.id_
    left join (select s.bh,  sum(
           case
                 when s.stkbz='0' then nvl(s.mj,0)
                 when s.stkbz='1' then 0-nvl(s.mj,0)
           end
      ) as heatingArea from  sk s  where s.nd = '2008-2009' group by s.bh) a on t2.bh_=a.bh
  where  t3.owe_money_- t2.owe_money_  = a.heatingArea*5 and t3.OWE_MONEY_ > 0;

--然后循环游标对数据进行更新:
复制代码 代码如下:

begin
        FOR everyRow IN D_CURSOR_CUS_INFO
        loop
         update T_CUS_YEAR_STATUS t
             set t.HEATING_AREA_ = everyRow.HEATING_AREA_,
                 t.OWE_MONEY_    = everyRow.owe_money_
             where t.YEAR_ = '2008-2009'
                   and t.id_ = everyRow.id_;
       end loop;
      commit;
end;

您可能感兴趣的文章:
  • 解析Oracle中多表级联删除的方法
  • Oracle中多表关联批量插入批量更新与批量删除操作
  • 关于Oracle多表连接,提高效率,性能优化操作
  • Mysql、Oracle中常用的多表修改语句总结
  • Oracle多表查询中间表的创建实例教程

标签:宜春 海北 孝感 六安 酒泉 泰安 淮南 葫芦岛

巨人网络通讯声明:本文标题《Oracle多表级联更新详解》,本文关键词  Oracle,多表级,联,更新,详解,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Oracle多表级联更新详解》相关的同类信息!
  • 本页收集关于Oracle多表级联更新详解的相关信息资讯供网民参考!
  • 推荐文章