mysql 5.5 替换字符_MySQL replace函数替换字符串语句的用法

MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪。

最近在研究CMS,在数据转换的时候需要用到mysql的MySQL replace函数,这里简单介绍一下。

比如你要将表 tb1里面的 f1字段的abc替换为def

UPDATE tb1 SET f1=REPLACE(f1, \'abc\', \'def\');

REPLACE(str,from_str,to_str)

在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串:

mysql> SELECT REPLACE(\'www.mysql.com\', \'w\', \'Ww\');

-> \'WwWwWw.mysql.com\'

这个函数是多字节安全的。

示例:

代码如下:

UPDATE `dede_addonarticle` SET body = REPLACE ( body, \'\', \'\' );

UPDATE `dede_addonarticle` SET body = REPLACE ( body, \'\', \'\' );

UPDATE `dede_addonarticle` SET body = REPLACE ( body, \'\', \'\' );

UPDATE `dede_archives` SET title= REPLACE ( title, \'大洋新闻 - \', \'\' );

UPDATE `dede_addonarticle` SET body = REPLACE ( body, \'../../../../../../\', \'http://sc.jb51.net/meal/\' );

mysql replace用法1.replace into   如:replace into table (id,name) values(\'1\',\'aa\'),(\'2\',\'bb\')

此语句的作用是向表table中插入两条记录。

2.replace(object, search,replace)把object中出现search的全部替换为replace   select replace(\'www.163.com\',\'w\',\'Ww\')--->WwW wWw.163.com

例:把表table中的name字段中的 aa替换为bb  update table set name=replace(name,\'aa\',\'bb\')

下面是其它网友的文章,可以参考下:今天无意之中发现了replace的用法,并且在项目中还有相关的应用,应用到项目中果然是屡试不爽。朋友们就来看下关于repace的详细解释吧。

REPLACE的运行与INSERT很相像。只有一点除外,如果表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值,则在新记录被插入之前,旧记录被删除。请参见13.2.4节,“INSERT语法”。

注意,除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用一个REPLACE语句没有意义。该语句会与INSERT相同,因为没有索引被用于确定是否新行复制了其它的行。

所有列的值均取自在REPLACE语句中被指定的值。所有缺失的列被设置为各自的默认值,这和INSERT一样。您不能从当前行中引用值,也不能在新行中使用值。如果您使用一个例如“SET col_name = col_name + 1”的赋值,则对位于右侧的列名称的引用会被作为DEFAULT(col_name)处理。因此,该赋值相当于SET col_name = DEFAULT(col_name) + 1。

为了能够使用REPLACE,您必须同时拥有表的INSERT和DELETE权限。

REPLACE语句会返回一个数,来指示受影响的行的数目。该数是被删除和被插入的行数的和。如果对于一个单行REPLACE该数为1,则一行被插入,同时没有行被删除。如果该数大于1,则在新行被插入前,有一个或多个旧行被删除。如果表包含多个唯一索引,并且新行复制了在不同的唯一索引中的不同旧行的值,则有可能是一个单一行替换了多个旧行。

受影响的行数可以容易地确定是否REPLACE只添加了一行,或者是否REPLACE也替换了其它行:检查该数是否为1(添加)或更大(替换)。

如果您正在使用C API,则可以使用mysql_affected_rows()函数获得受影响的行数。

目前,您不能在一个子查询中,向一个表中更换,同时从同一个表中选择。

以下是所用算法的更详细的说明(该算法也用于LOAD DATA…REPLACE):

1. 尝试把新行插入到表中

2. 当因为对于主键或唯一关键字出现重复关键字错误而造成插入失败时:

a. 从表中删除含有重复关键字值的冲突行

b. 再次尝试把新行插入到表中

使用格式:

代码如下:

REPLACE [LOW_PRIORITY | DELAYED]

[INTO] tbl_name [(col_name,...)]

VALUES ({expr | DEFAULT},…),(…),…

或:

REPLACE [LOW_PRIORITY | DELAYED]

[INTO] tbl_name

SET col_name={expr | DEFAULT}, …

或:

REPLACE [LOW_PRIORITY | DELAYED]

[INTO] tbl_name [(col_name,...)]

SELECT …

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507862.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPS 校验和 代码_Linux recovery 移除签名校验

原创作者:王锐,多年 Linux 系统、龙芯平台移植与优化研发经验,Linux Contributor、Mozillian。背景某个设备配套的刷机程序是个 Linux recovery kernel,刷机过程会先从U盘加载刷机脚本,仅在签名校验通过后才执行脚本。…

mysql xp系统时间_mysql时间类型year

date:年月日datetime:年月日时分秒,保存确定的时间点的时候,存储形式yyyy-mm-dd hh:MM-dd,暂用8个字节timestamp:时间从.存储时是整形数字,表现形式是yyyy-mm-dd hh:MM-dd,暂用4个字节,取值范围,1970-01-01 00:00:00到2038year:1个字节 1901-2155,可以用0000表示默认值,如果输…

shell su 密码_[SU模型] 59个公共卫生间

介绍 - Introduce名称|59个公共卫生间格式|skp大小|127 MB获取方式|免费获取嗨,大家好~今天给大家分享的是59个公共卫生间模型。文末获取素材- 部分素材内容的预览图如下 -A | ZD有一个计划:前期在公众平台…

mysql 备份成文件的脚本_Mysql自动全量备份脚本

数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果。轻则程序逻辑出现BUG,重则程序崩溃,数据丢失。造成数据丢失的原因,主要有程序错误、人为错误、计算机失败、磁盘失败、灾难(如起火、地震)和偷窃。数据库日常备份工…

python中使用什么导入模块-Python中使用语句导入模块或包的机制研究

这篇文章讨论了Python的from import *和from import *,它们怎么执行以及为什么使用这种语法(也许)是一个坏主意。 从一个模块导入全部 from import * means意味着“我希望能访问中我有权限访问的全部名称”。例如以下代码something.py&#x…

mysql触发器的要素_MySQL触发器

触发器是一类特殊的事务,可以监视某种数据操作(insert,update,delete),并触发相关操作(insert,update,delete)触发器创建之四要素:监视地点(table)监视事件(insert,update&#xff0…

您与此网站建立的连接不安全_dede网站密码忘记找回服务为先

dede网站密码忘记找回服务为先网站安全是现在一个非常重要的课题。基本上,互联网上的所有用户群都对自己的隐私信息和企业相关信息更感兴趣。因此,无论是搭建网站还是做一些平台,用户对网站服务器和网站空间安全都有很高的要求。对于网站服务…

python入门必备知识_python入门基本知识

1. 什么是语言语言是一个事物与另外一个事物沟通的介质。python则是人(程序员)与计算机沟通的介质。2. 什么是编程编程就是程序员将自己想要让计算机做的事情用编程语言翻译出来写到一系列的文件中。这一系列的文件称之为程序/软件。3. 为何要编程编程的目的就是让计算机按照程…

通达信手机版指标源码大全_通达信指标公式源码短炒买卖指标

做价值的传播者,一路同行,一起成长问题:怎样才能每天都收到这类文章!答案:只需点击上方《通达信指标公式软件》VAR1:((CLOSE-MA(CLOSE,6))/MA(CLOSE,6)*100(CLOSE-MA(CLOSE,24))/MA(CLOSE,24)*100(CLOSE-MA(CLOSE,32))…

c++ curl 超时_cc++写网络爬虫,curl+gumbo配合使用

是的,你没有听错。就是用c或者说c语言写爬虫。其实不难,虽然没有Python写起来那么简单。但是也不是那么复杂啦,毕竟好多大佬都写了那么多库,我们只要会用大佬写的库就行。网址:https://acm.sjtu.edu.cn/OnlineJudge/st…

S如何边缘控制_强夯法效果如何?来看看这个检测结果

强夯法指的是为提高软弱地基的承载力,用重锤自一定高度下落夯击土层使地基迅速固结的方法。强夯法适用于处理碎石土、砂土、低饱和度的粉土与黏性土、湿陷性黄土、杂填土和素填土等地基。对高饱和度的粉土与黏性土等地基,当采用在夯坑内回填块石、碎石或…

metinfo mysql_Metinfo 5.3.17 前台SQL注入漏洞

Metinfo 8月1日升级了版本,修复了一个影响小于等于5.3.17版本(几乎可以追溯到所有5.x版本)的SQL注入漏洞。这个SQL注入漏洞不受软WAF影响,可以直接获取数据,影响较广。### 0x01. 漏洞原理分析漏洞出现在 /include/global.func.php 文件的 jum…

冒泡和快速排序的时间复杂度_三分钟快速记住冒泡排序算法

冒泡排序名字由来:是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。冒泡排序原理:①、比较相邻的元素。如果第一个比第二个大&#xf…

js二维数组arr中表示读取第i行第j列的是:_c++ c语言 数组与字符串

c语法7 - 数组与字符串概述定义:把具有相同类型的若干变量按有序形式组织起来称为数组。C语言数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数…

linux安装weblogic_WebLogic的Azure虚拟机主要版本发布

作者:Reza Rahman我们很高兴地宣布,将发布在Azure Linux虚拟机上运行Oracle WebLogic Server(WLS)的解决方案的主要版本。该版本是与WebLogic团队共同开发的,是Microsoft和Oracle之间广泛合作伙伴关系的一部分。该合作…

mysql命令行导入url_Mysql 导入数据,推荐Source命令,太快了

VB.NET Winform的一些功能实现近段时间,开发的需要,需要写一个winform的程序.用VB.NET来写. 开发开始,需要实现一个窗体设为多文档界面 (MDI) 子窗体的容器.实现这个功能,开始找资料,得知设置一个属性:Form.I ...js+css实现模态层效果在做web前端的时候,有…

python wand安装_安装PythonMagick和pythonmagickwand 步骤

在centos6.0上测试安装,安装前准备工作:###############################################################################服务器如果没有安装Jpeg v6b、libPng、FreeType 的要在安装imagemagick之前先装好,否则imagemagick没法读取jpeg和p…

eprime经典程序案例_小程序经典案例!写字楼里的小店铺如何利用小程序增加人流量!...

大家好,我是柳州木子科技,当前短视频营销如火如荼,相比之下小程序不温不火,我还是那句话,是因为小程序没有把成功案例挖掘出来,通过小程序卖货赚钱的大有人在。前几篇分享了小程序玩赚的文章案例&#xff0…

python 服务注册_python注册Windows服务

注册windows服务程序框架安装pywin32pip install pywin32按照下述程序框架编写代码,业务逻辑写main函数里即可。SMWinserviceby Davide MastromatteoBase class to create winservice in Python-----------------------------------------Instructions:1. Just crea…

怎么看电脑配置高不高_电脑店学徒写的电脑配置单处处都是“亮点”,能“气死”师傅...

无论选择哪种类型的电脑都要把重点放在电脑硬件配置上面,电脑的性能完全依靠硬件配置的组合情况,电脑的价格高低标准依据同样是看电脑硬件配置组合情况,对于组装电脑来说,那硬件组合情况就格外重要了,因为组装电脑的硬…