我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL实现replace函数的几种实用场景

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL实现replace函数的几种实用场景

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执行,业务有特殊需求除外。

到此这篇关于MySQL实现replace函数的几种实用场景的文章就介绍到这了,更多相关MySQL replace实用场景内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL实现replace函数的几种实用场景

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL实现replace函数的几种实用场景

REPLACE语法REPLACE(String,from_str,to_str) 即:将String中所有出现的from_str替换为to_str,这里的from_str不支持正则匹配。 操作实例测试表数据如下:mysql> select
2022-05-26

sql中replace函数的应用场景有哪些

替换特定字符或子字符串:可以使用REPLACE函数来替换文本字段中的特定字符或子字符串。处理空值:可以使用REPLACE函数来将空值替换为其他值,以便在数据处理中更好地处理空值。修改数据格式:可以使用REPLACE函数来修改数据的格式,比如
sql中replace函数的应用场景有哪些
2024-03-15

sql中replace()函数的应用场景有哪些

替换字符串中的指定字符或子字符串:可以使用replace()函数将字符串中的指定字符或子字符串替换为新的字符或子字符串。更新数据表中的指定值:可以使用replace()函数在更新数据表中的指定列中的值时进行字符串替换操作。过滤特定字符:可以
sql中replace()函数的应用场景有哪些
2024-04-09

掌握rowcount函数的实际应用场景

掌握rowcount函数的实际应用场景,需要具体代码示例在数据库操作中,往往需要对数据进行增删改查的操作。而对于查询操作,我们经常需要获取返回结果的行数。这时,就可以用到数据库中的rowcount函数。rowcount函数是一个数据库操作的
掌握rowcount函数的实际应用场景
2023-12-29

golang函数闭包实现的原理和使用场景

go 中闭包原理:函数内嵌函数返回时,内嵌函数可访问外层函数变量,形成封闭环境。使用场景:1. 保持状态:闭包可维护内嵌函数状态,即使外层函数已返回;2. 延迟执行:用于延迟执行代码;3. 创建回调函数:通过事件触发调用;4. 模拟对象:用
golang函数闭包实现的原理和使用场景
2024-04-23

mysql date()函数的应用场景有哪些

检索指定日期的数据:可以使用 DATE() 函数来检索数据库中特定日期的数据记录。计算日期之间的差值:DATE() 函数可以帮助计算两个日期之间的差值,例如计算两个日期的天数差。根据日期进行排序:通过将日期字段传递给 DATE() 函数,可
mysql date()函数的应用场景有哪些
2024-03-12

MySQL表分区的几种实现

目录关于分区以及为什么要分区水平分区的几种类型及demo1.range分区2.list分区3.hash分区4.key分区5.子分区(复合分区)6.columns分区关于分区以及为什么要分区我们首先找到mysql的数据存储目录,可以通过语句
2022-08-18

实现CSS :empty伪类选择器的多种应用场景

实现CSS :empty伪类选择器的多种应用场景,需要具体代码示例CSS是一种用于控制网页样式的语言,可以通过选择器来选择文档中的元素并对其进行样式控制。其中,:empty伪类选择器用于选择没有子元素的元素。本文将介绍:empty伪类选择器
实现CSS :empty伪类选择器的多种应用场景
2023-11-20

Oracle DECODE函数实例分析与应用场景

Oracle DECODE函数是一种非常常用的条件表达式函数,其主要功能是根据指定的条件对表达式的结果进行转换并返回相应的值。DECODE函数的语法如下:DECODE(expr, search1, result1, search2, res
Oracle DECODE函数实例分析与应用场景
2024-03-08

Oracle DECODE函数实例详解与应用场景

Oracle数据库是一种流行的关系型数据库管理系统,它提供了丰富的函数和工具来处理复杂的数据操作。其中,DECODE函数是一个非常常用的函数之一,可以根据指定的条件对数据进行转换和处理。本文将详细介绍Oracle的DECODE函数,包括语法
Oracle DECODE函数实例详解与应用场景
2024-03-07

实现CSS :target伪类选择器的各种应用场景

实现CSS :target伪类选择器的各种应用场景,需要具体代码示例CSS : target 伪类选择器是一种常用的CSS选择器,它可以根据URL中的锚点(#)来选择特定的元素。在本文中,我们将介绍一些使用该伪类选择器的实际应用场景,并提供
实现CSS :target伪类选择器的各种应用场景
2023-11-20

PHP 函数返回值的类型有哪几种,各自的使用场景是什么?

php 函数可以返回各种数据类型的值,包括标量类型 (bool、int、float、string、null)、复合类型 (array、object) 和特殊类型 (mixed、void)。这决定了函数返回数据的性质和允许的操作。标量类型用于
PHP 函数返回值的类型有哪几种,各自的使用场景是什么?
2024-04-15

mysql中date_format函数的应用场景有哪些

将日期格式化为特定的字符串格式,如将"2021-10-15"格式化为"15/10/2021"。在SELECT语句中,将日期字段按照特定的格式显示,方便查看和分析。将日期字段进行比较或排序,需要先将日期格式化为统一的格式。将日期字段进行
mysql中date_format函数的应用场景有哪些
2024-04-09

编程热搜

目录