rinald_未来往事

mysql replace

MySQL

mysql replace,mysql replace替换,mysql替换,mysql substring,mysql locate

语法格式:

UPDATE 表名
SET 字段名 = REPLACE (
替换前的字段值,
‘替换前关键字’,
‘替换后关键字’
)
WHERE
字段名 REGEXP “替换前的字段值”;

示例Demo:
(1)替换b-blog表主键id为9的content字段内容www.fity.cn为fity.cn:

  1. UPDATE b_blog
  2. SET content = REPLACE (
  3. content,
  4. 'www.fity.cn',
  5. 'fity.cn'
  6. )
  7. WHERE
  8. id = 9

(2)替换下面内容为空白:

[b][url] [img] www.fity.cn [/img] [size=6][color=Red]未来往事~ 未来往事博客~、[/color][/size] [/url][/b]
[b][url] [img] www.xsimple.cn [/img] [size=6][color=Red]Xsimple:致力于提供互联网解决方案[/color][/size] [/url][/b]

SQL语句

  1. UPDATE b_blog
  2. SET message = REPLACE (
  3. message,
  4. substring(
  5. message,
  6. locate('[b][url] [img]', message),
  7. locate('[/url][/b]', message) + 10 - locate('[b][url] [img]', message)
  8. ),
  9. ''
  10. )
  11. WHERE
  12. id >= 10000

补充注释:

①SUBSTRING ( expression , pos, length ) 字符截取函数
参数
expression:是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
pos:是一个整数,指定子串的开始位置。
length:是一个整数,指定子串的长度(要返回的字符数或字节数)。
select msg = substring(‘fity.cn’, 6, 4) ….; //输出:msg — fity

②LOCATE(substr,str,pos)字符串查找函数,返回字符串所在的下标,支持中文,不区分大小写
第一个语法返回substr在字符串str 的第一个出现的位置。第二个语法返回子符串 substr 在字符串str,从pos处开始的第一次出现的位置。如果substr 不在str 中,则返回值为0 。
select locate(‘fity’, ‘fity.cn’); //输出6

③上述SQL中数字10为[/url][/b]字符串的个数和

原文作者:rinald
原文地址:http://fity.cn/post/569.html
互联网技术更新较快,本站很多文章具有实效性,我会及时更新原文,但转载的文章无法通知更新。为了不给读者造成困惑或误导,请您在转载时保留此出处信息,尊重别人也是尊重自己。

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。