国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle多表級聯更新詳解

2020-07-26 14:24:38
字體:
來源:轉載
供稿:網友

用游標實現,我覺得絕對這種方法比較安全的。
--首先定一個游標把需要用到的一些數據存放到游標中:

復制代碼 代碼如下:

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;

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潍坊市| 屏东市| 广河县| 中江县| 若羌县| 双桥区| 海丰县| 晋宁县| 沽源县| 巩义市| 蕉岭县| 松潘县| 大姚县| 莆田市| 吉安县| 乌拉特后旗| 内丘县| 上蔡县| 青田县| 桐庐县| 调兵山市| 秀山| 永康市| 大足县| 上饶县| 大田县| 普兰店市| 郧西县| 翁源县| 古蔺县| 砀山县| 建阳市| 阜康市| 亚东县| 错那县| 马鞍山市| 确山县| 高雄市| 诸城市| 临泽县| 新疆|