sql怎么批量替換字段里的部分字符串的
方法一:varchar和nvarchar類型是支持replace,所以如果你的text不超過8000可以先轉(zhuǎn)換成前面兩種類型再使用replace 替換 text ntext 數(shù)據(jù)類型字段的語句 。
1
|
update 表名 set 字段名= replace ( cast (與前面一樣的字段名 as varchar (8000)) , '原本內(nèi)容' , '想要替換成什么' ) |
方法二:
1
|
update [表名] set 字段名 = replace (與前面一樣的字段名, '原本內(nèi)容' , '想要替換成什么' ) |
方法三(此方法既可用于刪除某一列字段中的某部分字符,也可用于替換某一列字段中的某部分字符)
update Table_Name set Column_Name=replace(Column_Name,substring(Column_Name,Start,Length),'Replace_Content') --Start 是要替換的字符開始的位置 --Lenght 要替換字符的長(zhǎng)度
注:與stuff函數(shù)的不同
1、作用
stuff函數(shù)用于刪除指定長(zhǎng)度的字符,并在指定的起點(diǎn)處插入另一組字符。
2、語法
STUFF ( character_expression , start , length ,character_expression )
3、示例
以下示例在第一個(gè)字符串 abcdef 中刪除從第 2 個(gè)位置(字符 b)開始的三個(gè)字符,然后在刪除的起始位 置插入第二個(gè)字符串,從而創(chuàng)建并返回一個(gè)字符串
SELECT STUFF('abcdef', 2, 3, 'ijklmn') GO
下面是結(jié)果集
aijklmnef
4、參數(shù) character_expression
一個(gè)字符數(shù)據(jù)表達(dá)式。character_expression 可以是常量、變量,也可以是字符列或二進(jìn)制數(shù)據(jù)列。
start
一個(gè)整數(shù)值,指定刪除和插入的開始位置。如果 start 或 length 為負(fù),則返回空字符串。如果 start 比第一個(gè) character_expression長(zhǎng),則返回空字符串。start 可以是 bigint 類型。
length
一個(gè)整數(shù),指定要?jiǎng)h除的字符數(shù)。如果 length 比第一個(gè) character_expression長(zhǎng),則最多刪除到最后一個(gè) character_expression 中的最后一個(gè)字符。length 可以是 bigint 類型。
5、返回類型 如果 character_expression 是受支持的字符數(shù)據(jù)類型,則返回字符數(shù)據(jù)。如果 character_expression 是一個(gè)受支持的 binary 數(shù)據(jù)類型,則返回二進(jìn)制數(shù)據(jù)。
6、備注 如果結(jié)果值大于返回類型支持的最大值,則產(chǎn)生錯(cuò)誤。
stuff函數(shù)用于刪除指定長(zhǎng)度的某個(gè)字符,而我剛剛寫的語句則可以用來刪除某列中字段的某一部分,只需把Replace_Content設(shè)為空即可
方法四:
update Table_Name set Column_Name=replace(Column_Name,'Content','Replace_Content')
這段語句就可以用來代替某個(gè)特定的字符,用Replace_Content代替Content。
start 可用charindex函數(shù)。
如:查找字符串中“你好”的位置
執(zhí)行:
1
|
select charindex( '你好' , '2432你好dsfasdf' ) |
如果您的問題還未解決可以聯(lián)系站長(zhǎng)付費(fèi)協(xié)助。

有問題可以加入技術(shù)QQ群一起交流學(xué)習(xí)
本站vip會(huì)員 請(qǐng)加入無憂模板網(wǎng) VIP群(50604020) PS:加入時(shí)備注用戶名或昵稱
普通注冊(cè)會(huì)員或訪客 請(qǐng)加入無憂模板網(wǎng) 技術(shù)交流群(50604130)
客服微信號(hào):15898888535
聲明:本站所有文章資源內(nèi)容,如無特殊說明或標(biāo)注,均為采集網(wǎng)絡(luò)資源。如若內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系站長(zhǎng)刪除。