广州网站建设 讯度网络,网站建设属于IT吗,成品网站短视频源码搭建,黄页88网在线mysql中replace函数直接替换mysql数据库中某字段中的特定字符串#xff0c;用起来非常的方便。 REPLACE(str,from_str,to_str) 第一个字符串str中#xff0c;将from_str替换为to_str 回到上一篇文章的问题#xff1a;假设有两个借款#xff0c;其中一个借款…mysql中replace函数直接替换mysql数据库中某字段中的特定字符串用起来非常的方便。 REPLACE(str,from_str,to_str) 第一个字符串str中将from_str替换为to_str 回到上一篇文章的问题假设有两个借款其中一个借款1的到期还款日为2日借款2的到期还款日为10日。 这个字段loan_pmt_due_date日期有多个。这篇文章介绍另外一个函数REPLACE处理此问题。 先来看一个简单的例子
select REPLACE(hello word,word,world); # 结果hello world
select REPLACE(loan_pmt_due_date,SUBSTR(loan_pmt_due_date,9,2),02) from ms_repayment_plan where loan_id 1 and SUBSTR(loan_pmt_due_date,9,2)!02;select REPLACE(loan_pmt_due_date,SUBSTR(loan_pmt_due_date,9,2),10) from ms_repayment_plan where loan_id 2 and SUBSTR(loan_pmt_due_date,9,2)!10;
通过上面的语句我们发现是无法解决上面的问题的因为最后两个数字在字段loan_pmt_due_date中不是唯一的
注意REPLACE(str,from_str,to_str) 中from_str一定要确保在str中是唯一的要不然会替换多次
replace into函数 说到接触REPLACE我们会想到replace into函数有这样一个业务场景向数据库中插入数据前提是重复的不能再次插入。以前用where解决的今天才知道还有一个更简洁的方法replace。 replace具备替换拥有唯一索引或者主键索引重复数据的能力也就是如果使用replace into插入的数据的唯一索引或者主键索引与之前的数据有重复的情况将会删除原先的数据然后再进行添加。 语法replace into table( col1, col2, col3 ) values ( val1, val2, val3 ) 语义向table表中col1, col2, col3列replace数据val1val2val3
原先普通的insert语句会报错 replace into china_stock values(2,000839,中信国安);