sql怎麼批量替換欄位裡的字串的

2021-10-05 03:03:21 字數 2193 閱讀 9094

1樓:文件類共創空間

方法一:

varchar和nvarchar型別是支援replace,所以如果你的text不超過8000可以先轉換成前面兩種型別再使用replace 替換 text ntext 資料型別欄位的語句 。

update 表名 set 欄位名=replace(cast(與前面一樣的欄位名 as varchar(8000)) ,'原本內容','想要替換成什麼')

方法二:

update [表名] set 欄位名 = replace(與前面一樣的欄位名,'原本內容','想要替換成什麼')

2樓:匿名使用者

估計你是沒理解replace的意思

譬如你舉例的這幾個

update 表名 set 欄位名=replace(欄位名,'aaaa','cccc');

這樣以後

aaaa***bbb 變成 cccc***bbb

aaaamtbbb 變成 ccccmtbbb

替換的是裡邊的aaa

你那麼寫不知道你要改什麼,如果你只要改aaa*bbb的那種可以在後邊加where條件

update 表名 set 欄位名=replace(欄位名,'aaaa','cccc') where 欄位名 like 'aaa*bbb'

當然,這個模糊查詢是access裡的,如果是sqlserver或oracle等,那個*是要替換成%的

----補充----

按你說的意思

access:

update 表名 set 欄位名='a' where 欄位名 like 'aaa*bbb'

sqlserver或oracle:

update 表名 set 欄位名='a' where 欄位名 like 'aaa%bbb'

3樓:

update [表名] set [欄位名]=stuff([欄位名],charindex('aaaa',[欄位名],0),charindex('bbb',[欄位名],0)-charindex('aaaa',[欄位名],0)-4+7,'a'),

where [欄位名] like '%aaaa%bbb%'

就是用charindex取得'aaaa','bbb'的位置,計算需要替換字串的長度,然後用stuff函式替換.

4樓:匿名使用者

你那樣肯定不行。

update table[表名] set fields[欄位名]='要替換成的內容' where fields[欄位名] like 'aaa%bbb'

sql中如何批量替換欄位裡的字串?

5樓:匿名使用者

估計你是沒理解replace的意思

譬如你舉例的這幾個

update 表名 set 欄位名=replace(欄位名,'aaaa','cccc');

這樣以後

aaaa***bbb 變成 cccc***bbb

aaaamtbbb 變成 ccccmtbbb

替換的是裡邊的aaa

你那麼寫不知道你要改什麼,如果你只要改aaa*bbb的那種可以在後邊加where條件

update 表名 set 欄位名=replace(欄位名,'aaaa','cccc') where 欄位名 like 'aaa*bbb'

當然,這個模糊查詢是access裡的,如果是sqlserver或oracle等,那個*是要替換成%的

----補充----

按你說的意思

access:

update 表名 set 欄位名='a' where 欄位名 like 'aaa*bbb'

sqlserver或oracle:

update 表名 set 欄位名='a' where 欄位名 like 'aaa%bbb'

6樓:禹立咎若菱

update

[表名]

set[欄位名]=stuff([欄位名],charindex('aaaa',[欄位名],0),charindex('bbb',[欄位名],0)-charindex('aaaa',[欄位名],0)-4+7,'a'),

where

[欄位名]

like

'%aaaa%bbb%'

就是用charindex取得'aaaa','bbb'的位置,計算需要替換字串的長度,然後用stuff函式替換.

sql語句中的替換怎麼寫,sql怎麼批量替換欄位裡的字串的?

說明,將字串abcdefg中的字母a替換為c select replace abcdefg a c 查一下sql server的聯機叢書,多方便啊 sql怎麼批量替換欄位裡的字串的?方法一 varchar和nvarchar型別是支援replace,所以如果你的text不超過8000可以先轉換成前面兩...

SQL如何查詢某欄位中某字元的個數

將要查詢欄位的長度減去該欄位將要查詢字元替換為空後的長度 select len 欄位名 len replace 欄位名,要查詢的字元,from table select len value len replace value,len from tab sql server如何查詢文字欄位中,某個字元...

sql語句怎麼查詢表的欄位屬性名

請問你bai使用的是什麼資料庫?如果是dusql server你可以使用如zhi下的語句dao來獲取各個表的欄位名稱及其專相關的屬性.select from syscolumns where id select id from sysobjects where name 你要查詢的屬表名 看了看但不...