萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> mysql在SQL語句中使用replace替換字符

mysql在SQL語句中使用replace替換字符

replace替換如果不配合update語句來操作是無法實現替換更新的,只能實現替換查詢了,下面來給各位介紹一下關於replace例子。

本來不想告訴大家的,因為采集別人網站不是什麼光彩事,但覺得這個技巧實在是夠強,要不是這簡短的一行代碼,我還不累死了。是這樣的,采集了一些別人的文章,可能是采集程序的問題,每篇文章的標題裡都多出了一些字符<img src="images/awwor.gif">,導致在生成HTML網頁後很多內容不顯示,但是看了看記錄有2000多條,一條一條改,還不累死我啊。於是請教了一個SQL高手,發我一行SQL語句:

 代碼如下 復制代碼

Update dede_addonsoft SET dxylink=REPLACE(dxylink, '.zip', '.rar') where aid > 45553;

update `table_name` set field = replace(field,'.rar','.7z');

table_name:要查詢的表名,
field:表裡的字段名,

replace(field,'.rar','.7z'); :正則匹配,把field字段裡的 .rar 替換為 .7z

執行完什麼也沒見到,可我看了一下數據庫,哇塞!!真爽了,<img src="images/awwor.gif">全部都不見了,覺得這個語句真夠猛的,也怪自己不懂SQL竟然有如此用法啊,以後要多多研究sql了,事半功倍啊。所以不敢獨享本經驗,特此與大家分享。另外報告,俺現在已經不搞采集了,就像做人一樣老實做站,期待大家的站也有好收成。順便說下這行代碼的含義:

update '表名(比如我的article)' set 要修改的字段名 = replace (要修改的字段名,'被替換的字符','替換後的字符')

補充:

mysql replace用法
1.replace into

replace 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中出現search的全部替換為replace
select replace('www.163.com','w','Ww')--->WwWwWw.163.com
例:把表table中的name字段中的aa替換為bb
update table set name=replace(name,'aa','bb')

copyright © 萬盛學電腦網 all rights reserved