例如: abcd(efg)hijk 替换之后是abcdhijk
update tabaleA set name = replace(name, substring(name, locate('<contact>', name),locate('</contact>', name)-locate('<contact>'+10, name)),'');
执行之后,报错:Truncated incorrect DOUBLE value解决办法,经过查询发现是concat(Str,’’)函数错误问题,有的DB支持+操作符,而有的就不可以必须使用concat 函数。
将SQL修改如下:
update t_global_project set name = replace(name, substring(name, locate('<contact>', name),locate('</contact>', name)-locate(concat('<contact>','10'), name)),'');
参考文章:
http://blog.csdn.net/beenin/article/details/5506793
http://babyjoycry.iteye.com/blog/609276