mysql批量替换字段关键词_mysql 如何批量替换 字段中的 title="xxxx"

这是在 stackoverflow 看到的

首先创建一个mysql函数:

DELIMITER $$

CREATE FUNCTION `regex_replace`(pattern VARCHAR(1000),replacement VARCHAR(1000),original VARCHAR(1000))

RETURNS VARCHAR(1000)

DETERMINISTIC

BEGIN

DECLARE temp VARCHAR(1000);

DECLARE ch VARCHAR(1);

DECLARE i INT;

SET i = 1;

SET temp = '';

IF original REGEXP pattern THEN

loop_label: LOOP

IF i>CHAR_LENGTH(original) THEN

LEAVE loop_label;

END IF;

SET ch = SUBSTRING(original,i,1);

IF NOT ch REGEXP pattern THEN

SET temp = CONCAT(temp,ch);

ELSE

SET temp = CONCAT(temp,replacement);

END IF;

SET i=i+1;

END LOOP;

ELSE

SET temp = original;

END IF;

RETURN temp;

END$$

DELIMITER ;

执行上边自定义函数后,执行sql如下:

SELECT link_image,regex_replace('[title=""]' , '', link_image) AS replace_link_img FROM wp_links

WHERE link_image LIKE '%title="%';

执行结果:

34c12ef300f0e2a9e1e5596d73a25332.png

但是有个问题

title 中间的没有替换, 麻烦哪位大神看下这个mysql function 怎么改

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值