【www.bbyears.com--php安装】
语法格式:
UPDATE 表名
SET 字段名 = REPLACE (
替换前的字段值,
"替换前关键字",
"替换后关键字"
)
WHERE
字段名 REGEXP "替换前的字段值";
示例Demo:
(1)替换b-blog表主键id为9的content字段内容www.111cn.ne为m.111cn.net:
SET content = REPLACE (
content,
"www.111cn.net",
"m.111cn.net"
)
WHERE
id = 9
(2)替换下面内容为空白:
[b][url] [img] www.111cn.ne [/img] [size=6][color=Red]未来往事~ 未来往事博客~、[/color][/size] [/url][/b]
[b][url] [img] www.111cn.net [/img] [size=6][color=Red]Xsimple:致力于提供互联网解决方案[/color][/size] [/url][/b]
SQL语句:
UPDATE b_blog
SET message = REPLACE (
message,
substring(
message,
locate("[b][url] [img]", message),
locate("[/url][/b]", message) + 10 - locate("[b][url] [img]", message)
),
""
)
WHERE
id >= 10000
#补充注释:
①SUBSTRING ( expression , pos, length ) 字符截取函数
参数
expression:是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。
pos:是一个整数,指定子串的开始位置。
length:是一个整数,指定子串的长度(要返回的字符数或字节数)。
select msg = substring("blog.fity.cn", 6, 4) ....; //输出:msg -- fity
②LOCATE(substr,str,pos)字符串查找函数,返回字符串所在的下标,支持中文,不区分大小写
第一个语法返回substr在字符串str 的第一个出现的位置。第二个语法返回子符串 substr 在字符串str,从pos处开始的第一次出现的位置。如果substr 不在str 中,则返回值为0 。
select locate("fity", "blog.fity.cn"); //输出6
③上述SQL中数字10为[/url][/b]字符串的个数和