查询
select replace(url,'>
update article set body=INSERT(body, INSTR(body,'上海'), 4, '广州') where INSTR(body,'上海')<>0;
INSTR(body,'上海')---找到body里出现的第一个上海的位置;
INSERT(body, INSTR(body,'上海'), 4, '广州') 将body从第一个上海的位置开始的4个字符(上海两个字占4个字符)替换为广州。
每件是INSTR(body,'上海')不等0,因为body中没有上海的话,INSTR(body,'上海')会返回0,INSERT(body, INSTR(body,'上海'), 4, '广州')就会将body左边开始的4个字符删掉换为广州,这显然不是我们想要的结果。
Replace("字符串","要被替代的字符串","替代后的字符串")
1、sql
replace
into用法详细说明REPLACE的运行与INSERT很相似。只有一点例外,假如表中的一个旧记录与一个用于PRIMARYKEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。
2、注意,除非表有一个PRIMARY
KEY或UNIQUE索引,否则,使用一个REPLACE语句没有意义。该语句会与INSERT相同,因为没有索引被用于确定是否新行复制了其它的行。
3、所有列的值均取自在REPLACE语句中被指定的值。所有缺失的列被设置为各自的默认值,这和INSERT一样。您不能从当前行中引用值,也不能在新行中使用值。如果您使用一个例如“SET
col_name
=
col_name
+
1”的赋值,则对位于右侧的列名称的引用会被作DEFAULT(col_name)处理。因此,该赋值相当于SET
col_name
=
DEFAULT(col_name)
+
1。为了能够使用REPLACE,必须同时拥有表的INSERT和DELETE权限。
update GOODS set GoodsNamestr=replace(GoodsNamestr,'商品名称','宝贝名称')
update GOODS set GoodsNamestr=replace(GoodsNamestr,'商品名称','宝贝名称') where ID=7
--------------------------
服务器: 消息 306,级别 16,状态 1,行 1
不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。
这个应该是因为你 *** 作的字段是text、ntext 和 image 数据类型
这几个类型的字段不能用= 、!=进行比较 ,要用 IS NULL、IS NOT NULL 或 LIKE 运算符
如果对text、ntext 和 image 数据类型的字段做部分替换修改也不能直接update这个字段
以上就是关于mysql数据库字段里的内容部分替换语句全部的内容,包括:mysql数据库字段里的内容部分替换语句、如何替换SQL Server数据库内容、怎么用sql语句实现部分内容替换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)