批量更新

批量更新

数据样例如下

 id  | name  | flag

-----+-------+------

   1 | c4ca4 |    1

   2 | c81e7 |    1

   3 | eccbc |    1

   4 | a87ff |    1

   5 | e4da3 |    1

   6 | 16790 |    1

   7 | 8f14e |    1

   8 | c9f0f |    1

   9 | 45c48 |    1

 

批量更新,写储存过程或函数实现每次更新10行数据,直至更新完毕。

(MySQL实现)。

MySQL实现

do $$

declare

tmp_id int;

tmp_rec record;

tmp_index integer;

tmp_flag boolean;

begin

tmp_id := 0; tmp_index := 0;

loop

tmp_flag := false;

tmp_index := tmp_index + 1;

for tmp_rec in select id from test where id>tmp_id order by id limit 10 loop

update test set flag=0 where id=tmp_rec.id;

tmp_flag:=true;

tmp_id := tmp_rec.id;

end loop;

raise notice  '%,%', tmp_index,tmp_id;

if( false = tmp_flag ) then

return;

end if;

end loop;

end;

$$;   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值