MySQL:replace函数的几种实用场景_51CTO博客_mysql replace函数


本站和网页 https://blog.51cto.com/u_13677412/3673768 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

MySQL:replace函数的几种实用场景_51CTO博客_mysql replace函数
MySQL:replace函数的几种实用场景
关注
山一程水一更
文章目录
目录
使用场景1 – (Query语句):
使用场景2 – (update语句):
使用场景3 – (插入或替换:REPLACE INTO)
MySQL:replace函数的几种实用场景
原创
山一程水一更
2021-08-28 12:53:10
博主文章分类:MySQL江湖路
©著作权
文章标签
mysql
replace函数
replace替换
使用场景
sql
文章分类
Java
后端开发
©著作权归作者所有:来自51CTO博客作者山一程水一更的原创作品,请联系作者获取转载授权,否则将追究法律责任
MySQL的Replace函数都有哪些用法,你是否都知晓呢?今天,让我带大家花几分钟时间来一起看一看,记得Mark!
目录
REPLACE语法
操作实例
使用场景1 -- (Query语句):
使用场景2 -- (update语句):
使用场景3 -- (插入或替换:REPLACE INTO)
附、一张有故事的照片(五)
REPLACE语法
REPLACE(String,from_str,to_str)
即:将String中所有出现的from_str替换为to_str,这里的from_str不支持正则匹配。
操作实例
测试表数据如下:
mysql> select * from `LOL`;
+----+----------------+--------------+-------+
| id | hero_title | hero_name | price |
+----+----------------+--------------+-------+
| 1 | 刀锋之影 | 泰隆 | 6300 |
| 2 | 迅捷斥候 | 提莫 | 6300 |
| 3 | 光辉女郎AA | 拉克丝 | 1350 |
| 4 | 发条A魔灵A | 奥莉安娜 | 6300 |
| 5 | 至高之拳 | 李青 | 6300 |
| 6 | 无极剑圣 | 易 | 450 |
| 7 | 疾风剑豪 | 亚索 | 6300 |
+----+----------------+--------------+-------+
7 rows in set (0.00 sec)
使用场景1 – (Query语句):
需求:把"hero_title"字段中所有的"之"换成" - "来展示,SQL如下:
SELECT REPLACE(hero_title,'之',' - ')as repl_title,hero_name,price from LOL;mysql> SELECT REPLACE(hero_title,'之',' - ') as repl_title,hero_name,price from `LOL`;
+----------------+--------------+-------+
| repl_title | hero_name | price |
+----------------+--------------+-------+
| 刀锋 - 影 | 泰隆 | 6300 |
| 迅捷斥候 | 提莫 | 6300 |
| 光辉女郎AA | 拉克丝 | 1350 |
| 发条A魔灵A | 奥莉安娜 | 6300 |
| 至高 - 拳 | 李青 | 6300 |
| 无极剑圣 | 易 | 450 |
| 疾风剑豪 | 亚索 | 6300 |
+----------------+--------------+-------+
7 rows in set (0.00 sec)
使用场景2 – (update语句):
需求:把"hero_title"字段中所有的"A"去掉,SQL如下:
UPDATE LOL SET hero_title=REPLACE(hero_title,‘A’,’’);
mysql> UPDATE `LOL` SET hero_title=REPLACE(hero_title,'A','');
Query OK, 2 rows affected (0.05 sec)
Rows matched: 7 Changed: 2 Warnings: 0
-- 去掉后在查询:
+----+--------------+--------------+-------+
| id | hero_title | hero_name | price |
+----+--------------+--------------+-------+
| 1 | 刀锋之影 | 泰隆 | 6300 |
| 2 | 迅捷斥候 | 提莫 | 6300 |
| 3 | 光辉女郎 | 拉克丝 | 1350 |
| 4 | 发条魔灵 | 奥莉安娜 | 6300 |
| 5 | 至高之拳 | 李青 | 6300 |
| 6 | 无极剑圣 | 易 | 450 |
| 7 | 疾风剑豪 | 亚索 | 6300 |
+----+--------------+--------------+-------+
7 rows in set (0.00 sec)
使用场景3 – (插入或替换:REPLACE INTO)
  如果我们想插入一条新记录(INSERT),但如果记录已经存在,就先删除原记录,再插入新记录。
需求场景:   这张表存的每个客户最近一次交易订单信息,要求保证单个用户数据不重复录入,且执行效率最高,与数据库交互最少,支撑数据库的高可用。   此时,可以使用"REPLACE INTO"语句,这样就不必先查询,再决定是否先删除再插入。
"REPLACE INTO"语句是基于唯一索引或主键来判断唯一(是否存在)的。"REPLACE INTO"语句是基于唯一索引或主键来判断唯一(是否存在)的。"REPLACE INTO"语句是基于唯一索引或主键来判断唯一(是否存在)的。
注意事项:如下SQL所示,需要在username字段上建立唯一索引(Unique),transId设置自增即可。
-- 20点充值
REPLACE INTO last_transaction (transId,username,amount,trans_time,remark)
VALUES (null, 'chenhaha', 30, '2020-06-11 20:00:20', '会员充值');
-- 21点买皮肤
REPLACE INTO last_transaction (transId,username,amount,trans_time,remark)
VALUES (null, 'chenhaha', 100, '2020-06-11 21:00:00', '购买盲僧至高之拳皮肤');
  若username='chenhaha’的记录不存在,REPLACE语句将插入新记录(首次充值),否则,当前username='chenhaha’的记录将被删除,然后再插入新记录。
  id不要给具体值,不然会影响SQL执行,业务有特殊需求除外。
附、一张有故事的照片(五)
看到这张照片,你的第一反应是什么? 网友评价: 这张照片,第一眼我就觉得仿佛看到一个历经风霜的老人,他似乎受过许多磨难,或许他也曾反抗过,可直到今日,身上的枷锁还不曾卸下,所以他开始释然,心灵的自由便是真的自由。
收藏
评论
分享
举报
上一篇:JAVA高频216道面试题+答案!!面试必备
下一篇:曾经,我以为我很懂MySQL索引
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
全部评论
()
最热
最新
相关文章
mysql的replace用法
# MySQL的REPLACE用法## 1. 流程图```flowchartst=>start: 开始op1=>operation: 连接到MySQL数据库op2=>operation: 执行REPLACE语句op3=>operation: 返回结果e=>end: 结束st->op1->op2->op3->e```## 2. 简介在MySQL中,REPLACE是一种
MySQL
数据库
数据
mysql replace用法
mysql replace用法1.replace intoreplace into table (id,name) values('1','aa'),('2','bb')此语句的作用是向表table中插入两条记录。如果主键id为1或2不存在就相当于insert into table (id,name) values('1','aa'),('2','bb')如果存在相同的值则不会插入数据2.replace(object,search,replace)把object中出现
mysql
插入数据
主键
字段
MySQL replace into 用法
讨人喜欢的 MySQL replace into 用法(insert into 的增强版)在向表中插入数据的时候,经常遇到这样的情况:1. 首先判断数据是否存在; 2. 如果不存在,则插入;3.如果存在,则更新。在 SQL Server 中可以这样处理: if not exists (select 1 from&n
update
insert
where
replace
values
MySql之 replace 用法
mysql replace实例说明: UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); REPLACE(str,from_str,to_str) 在字符串 str 中所有出现
mysql
字符串
.net
mySQL中replace的用法总结
MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪。mysql replace实例说明: UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); REPLACE(str,from_str,to_str) 在字符串 str 中所有出
mysql replace函数
mysql中replace into、replace into、insert ignore用法区别
mysql中insert into和replace into以及insert ignore用法区别: mysql中常用的三种插入数据的语句: insertinto表示插入数据,数据库会检查主键,如果出现重复会报错; replaceinto表示插入替换数据,需求表中有PrimaryKey,或者unique索引,如果数据库已经存在数据,则用新数据替
mysql
replace into
insert ignore
insert into
mysql替换函数REPLACE()用法
当我们所查出来的手机号需要隐藏中间的数字时可用到这个函数语句如下:SELECT REPLACE(phone, SUBSTR(phone,4,4), 'XXXX') AS phone FROM smart_platform_db.users新开通一个个人微信公众号,感兴趣的朋友可以扫描点击关注下哦,在接下的工作中的所感所想、优质资源也会在公众号内更新,希望我们可以一起交流共同...
mysql
mysql正则与replace用法
正则与like的用法:whereconditionlike'%something%'orconditionlike'%somethingelse%'===whereconditionregexp'*something*|*somethingelse*'replace用法:field=replace(field,'a','b')
mysql
正则
replace
用法
MySQL replace into 用法详细介绍
MySQL replace into 用法详细介绍
MySQL replace into 用
MySQL
数据
插入数据
MYSQL中替换函数replace的用法
$name='张三';update tableset keywords=replace(keywords,"'.$name.'","李四") where id =123);replace可以替换掉字段值“张三”为“李四”张三有一顶帽子》》》李四有一顶帽子
mysql
数据库
database
字段
mysql的replace复杂用法 replace mysql用法
REPLACEMySQL REPLACE语句是标准SQL的MySQL扩展。MySQL REPLACE语句的工作原理如下:如果新行已不存在,则MySQL REPLACE 语句将插入新行。如果新行已存在,则 REPLACE 语句首先删除旧行,然后插入新行。在某些情况下,REPLACE语句仅更新现有行。注意:要确定表中是否已存在新行,MySQL使用PRIMARY KEY或UNIQUE KEY 索引。如果
mysql的replace复杂用法
sql
MySQL
ci
触发器
mysql的replace用法 replace函数mysql
MySQL REPLACE字符串函数简介MySQL为您提供了一个有用的字符串函数REPLACE(),它允许您用新的字符串替换表的列中的字符串。REPLACE()函数的语法如下:REPLACE(str,old_string,new_string);REPLACE()函数有三个参数,它将string中的old_string替换为new_string字符串。注意: 有一个也叫作REPLACE的语句用于插
mysql的replace用法
MySQL
字符串
字符串函数
mysqlreferences用法 mysql的replace用法
【IT168 技术文档】用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句。言外之意,就是对数据进行修改。在标准的SQL中有3个语句,它们是INSERT、UPDATE以及DELETE。在MySQL中又多了一个REPLACE语句,因此,本文以MySQL为背景来讨论如何使有SQL中的更新语句。  一、INSERT和REPLAC
mysqlreferences用法
mysql
insert
table
delete
【记录】【mysql】的REPLACE()用法
操作前数据 操作
MySQL
数据
JAVA
MYSQL中replace into的用法
今天在编程的时候,学习了replace into的用法,真的很好用,是insert into的增强版。在向表中插入数据时,我们经常会遇到这样的情况:1、首先判断数据是否存在;2、如果不存在,则插入;3、如果存在,则更新。在SQL Server中可以这样处理: if not exists (selec...
数据
mysql
插入数据
赋值
主键
mySQL中replace的用法
 MySQL replace函数我们经常用到,下面就为您详细介绍MySQL replace函数的用法,希望对您学习MySQL replace函数方面能有所启迪 mysql replace实例说明: UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); REPLACE(str,from_str,to_str) 在字符串 str 中所有出现的字符串 from
mysql
字符串
.net
字段
批量替换
REPLACE INTO的用法
在向表中插入数据的时候,经常遇到这样的情况:1.首先判断数据是否存在;2.如果不存在,则插入;3.如果存在,则更新。在SQLServer中可以这样处理:if not exists (select 1 from t where id = 1) insert into t(id, update_time) values(1, getdate()) else update t set update_time = getdate() where id = 1那么MySQL中如何实现这样的逻辑呢?别着急!MySQL中有更简单的方法:replace into t(id, update_time) ...
数据
插入数据
mysql
主键
功能类
mysql replace into用法与坑
需要主键一致 PRIMARY KEY (id) PRIMARY KEY (id, ts) 坑: https://blog.xupeng.me/2013/10/11/mysql-replace-into-trap/ 可以看到 MySQL 说 “2 rows affected”,可是明明是只写一条记录,
mysql
字段
字段名
无法显示
html
replace函数 java replace函数的用法
在excel中,常用的替换函数有replace和substitute函数,这两个函数都可以替换单元格中的部分内容,功能和ctrl+H的功能类似,但是使用函数的目的一方面不会破坏原数据,另一方面与其他函数结合可以实现更多功能,对于substitute的参数=substitute(单元格,被替换的字符串,新字符串,指定替换第几个),第四个参数可以省略,表示全部替换。而replace函数的参数=repl
replace函数 java
字符串
字符替换
数组函数
jquery获取鼠标点击位置 jquery鼠标点击事件怎么写
前面的话  鼠标事件是DOM事件中最常用的事件,jQuery对鼠标事件进行了封装和扩展。本文将详细介绍jQuery鼠标事件 类型  鼠标事件共10类,包括click、contextmenu、dblclick、mousedown、mouseup、mousemove、mouseover、mouseout、mouseenter和mouseleave click 当用户按下并释放
jquery获取鼠标点击位置
jquery
html
css
营销上云建设技术架构 营销云saas
在讲营销SaaS之前,我们先来理解一下SaaS。SaaS是Software-as-a-Service(软件即服务)的简称。随着互联网技术的发展和应用软件的成熟,SaaS在21世纪开始兴起。SaaS定义了一种新的交付方式,也使得软件进一步回归服务本质。用户不用再购买软件,而改用按定购的服务多少和时间长短向厂商支付费用,且无需对软件进行维护。好比买软件是自己挖井,而买SaaS则是装了自来水一一你用多少
营销上云建设技术架构
数据
流媒体
头条小程序
java中Transactional放在service java transactiontemplate
一、TransactionCallback接口 Object doInTransaction(TransactionStatus status)TransactionTemplate已经搭好了事务框架,我们只需将多条SQL语句放在doInTransaction中执行就可以了。但是SQL语句通过什么方法来执行呢?二、方法一:获取Connection来执行 获取Connection又有两种
java
bc
Java
Source
a53架构好吗 a53架构和a7架构哪个好
以下总结一下近几年来手机端较为主流的ARM处理器。Cortex-A72处理器、Cortex-A57处理器、Cortex-A53处理器、Cortex-A15处理器、Cortex-A12处理器、Cortex-A9处理器、Cortex-A8处理器、Cortex-A7处理器、Cortex-A5处理器、ARM11处理器、ARM9处理器、ARM7处理器 再往低的部分手机产品中基本已经不再使用,这里就不再介绍。
a53架构好吗
智能手机
体系结构
高速缓存
mysql数据库显示 mysql数据库显示数据
作者选择100电脑网推荐配置了解最佳配置看首页MYSQL数据库使用广泛,显示是数据库最常用的操作,笔者整理了MYSQL数据库一些常用的显示命令。MYSQL一些常用的显示命令:建库: create database 库名;显示数据库列表:show databases;显示数据表的结构: describe 表名;显示库中的数据表: use mysql;打开库:show t
mysql数据库显示
mysql数据库实例是什么
数据库
字段
mysql
山一程水一更
关注
私信
分类列表
更多
# Java岗大厂面试百日冲刺 -1篇
# MySQL江湖路118篇
# 常见报错解决记录2篇
# Java69篇
# Linux40篇
近期文章
1.直播预告:全球通邮-如何保障安全、快捷的海外中继服务
2.# yyds干货盘点 # 盘点一个Python自动化办公需求之word文档图片自动插入
3.企业版远程软件推荐
4.IDEA插件推荐:Apipost-Helper
5.smt贴片生产加工中常见的危险和防护措施
文章目录
目录
使用场景1 – (Query语句):
使用场景2 – (update语句):
使用场景3 – (插入或替换:REPLACE INTO)
每日签到
意见反馈
举报文章
请选择举报类型
内容侵权
涉嫌营销
内容抄袭
违法信息
其他
具体原因
包含不真实信息
涉及个人隐私
原文链接(必填)
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M
取消
确认
已经收到您得举报信息,我们会尽快审核
收藏
评论
分享
如有误判或任何疑问,可联系 「小助手微信:cto51cto」申诉及反馈。
我知道了
51CTO首页
内容精选
博客
学堂
精培
企业培训
CTO训练营
智能汽车
开源基础软件社区
WOT全球技术创新大会
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
精品班
厂商认证
IT技术
2024年软考
PMP项目管理
软考资讯
在线学习
企业服务
CTO训练营
技术经理研习营
LeaTech峰会
文章
资源
问答
开源课堂
专栏
直播
51CTO
开源基础软件社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
开源基础软件社区订阅号
51CTO学堂APP
51CTO学堂企业版APP
开源基础软件社区视频号
51CTO博客
首页
关注
排行榜
订阅专栏
搜索历史
清空
热门搜索
查看【
】的结果
写文章
创作中心
登录注册
Copyright 2005-2023 51CTO.COM
版权所有 京ICP证060544号
关于我们
官方博客
全部文章
热门标签
班级博客
了解我们
网站地图
意见反馈
友情链接
开源基础软件社区
51CTO学堂
51CTO
软考资讯
汽车开发者社区