mysql 字串替換

2021-07-28 03:28:31 字數 792 閱讀 3360

首先描述一下,我遇到的問題:

以下是資料庫中的乙個表data:

語言欄是這樣的english(???) 我想把括號以及括號中的字元去掉 

replace函式是不支援正規表示式的,所以只能採用其他的方法處理。:上網查了一下 我用了下面的sql

[sql]view plain

copy

print?

update

data_source 

setlanguage = 

replace

(language,

substring

(language, locate(

'(', language),locate(

')', language) ),

'')   

where

brand_name=

'behringer'

問題解決了

下面描述下,所用到的函式:

locate:

locate(substr,str)

position(substr in str)

返回子串 substr 在字串 str 中第一次出現的位置。如果子串 substr 在 str 中不存在,返回值為 0:

substring

substr(str,pos,len): 由中的第位置開始,選出接下去的個字元。 

replace

replace(str1, str2, str3): 在字串 str1 中,當 str2 出現時,將其以 str3 替代。

mysql字串替換

資料庫是mysql的。我想把lesson表中的slide path dx欄位中的類似 替換成e web manhua y k aote 02.rar 也就是說實際上可能需要兩個sql語句,乙個語句把 替換成e web manhua 第二個語句把 替換成 update lesson set slide...

mysql字串替換

資料庫是mysql的。我想把lesson表中的slide path dx欄位中的類似 替換成e web manhua y k aote 02.rar 也就是說實際上可能需要兩個sql語句,乙個語句把 替換成e web manhua 第二個語句把 替換成 update lesson set slide...

Mysql字串中字元替換

這裡的替換用的是locate 函式查詢字串首先出現的位置,然後使用substr 切割字串,之後通過concat連線起來,主要限制是只能替換一次,需要指定位置的 比如第二個k 之類的 需要通過巢狀locate 來做locate substr,str,pos 查詢pos之後substr首次出現的位置 另...