色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

MySQL數(shù)據(jù)庫中寫入的A字段值前綴錯誤,如何替換錯誤部分為指定字符串?

錢多多2年前17瀏覽0評論

如問題所言,替換某字段中的特定字符串。在MySQL提供了一個非常實用的字符串函數(shù)——REPLACE()函數(shù),它允許用新的字符串替換字段中的特定字符串,能夠幫助我們非常方便的替換字段中的文本,比如更新失效的URL,糾正拼寫錯誤等。


REPLACE函數(shù)語法

REPLACE函數(shù)中有三個參數(shù),它將string中的old_string字符串替換為new_string字符串。

如上,url_information表中Tony的url鏈接信息已經(jīng)失效,我們需要將Tony的url中的"mp"字符串替換為"www"字符串,在UPDATE語句中使用REPLACE()函數(shù)的語法如下:

上述SQL執(zhí)行結(jié)果如下:

注意:當(dāng)搜索要替換的文本時,MySQL使用區(qū)分大小寫匹配來執(zhí)行要替換的字符串的搜索。


這里我們再額外再介紹一個被用作替換字符串的函數(shù)——INSERT()函數(shù)。

INSERT()函數(shù)語法

INSERT()函數(shù)返回字符串s1,子字符串起始于x位置,被字符串s2取代len個字符。

接下來,我們使用如上url_information表來體驗一下INSERT()函數(shù),如下:

執(zhí)行上述三條SQL,結(jié)果如下:

我們結(jié)合如上執(zhí)行結(jié)果,來了解一下INSERT()函數(shù)的用法:
  • 第一個INSERT(url,5,7,'baidu')將從url字段第5個字符開始長度為7的字符串替換為'baidu'。
  • 第二個INSERT(url,-1,4,'baidu')中的起始位置-1超出了字符串長度,直接返回原字符串。
  • 第三個INSERT(url,5,20,'baidi')替換長度超出了原字符串長度,則從第5個字符開始,截取后面所有的字符,并替換為指定字符'baidu'。