mysql替换数据_mysql 替换数值

CREATE PROCEDURE key_replace(add_value int)

BEGIN

DECLARE spec_line,tran_line text DEFAULT '';

DECLARE done,lp_cur,lp_len int default 0;

DECLARE cur1 cursor for select a from table;

DECLARE CONTINUE HANDLER for NOT FOUND SET done = 1;

BEGIN

OPEN cur1;

do_loop: LOOP

SET done = 0;

FETCH cur1 INTO spec_line;

IF done = 1 THEN

LEAVE do_loop;

END IF;

SET lp_cur = 0;

SET lp_len = char_length(spec_line) - char_length(replace(spec_line,';',''));

SET tran_line = '';

inn_loop: LOOP

IF lp_cur > lp_len THEN

LEAVE inn_loop;

END IF;

SET spec_key = substring_index(substring_index(spec_line,';',lp_cur),';',-1);

SET lp_cur = lp_cur + 1;

SET tran_line = CONCAT(tran_line,substring_index(spec_key,':',1),':',CAST(substring_index(spec_key,':',-1) AS SIGNED) + add_value,';');

END LOOP inn_loop;

UPDATE table SET a = tran_line WHERE a = spec_line;

END LOOP do_loop;

CLOSE cur1;

END

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值