在SQL SERVER中批量替換字符串的方法

UPDATE MainData
SET Content =
REPLACE(CAST(Content AS VARCHAR(8000))
        , 'XM00000137'
        , 'XM00000078')
WHERE [Key]
IN (SELECT
    md_key
FROM index_md_inProject
WHERE md_inProject = 'XM00000137')

使用 replace 函數,具體的格式爲:函數

update [table表名] set [Fields字段名]=replace([Fields字段名],'被替換原內容','要替換成的內容') 

固然,若是想直接 replace 的字段類型是 text 類型,是會報錯(「參數數據類型 text 對於 replace 函數的參數 1 無效」)。spa

Hashxu:對text或ntext類型的數據在查詢中不能進行字符串操做。
這時用得最多的是把text看成varchar(實際內容長度低於8000字節時)或把ntext看成nvarchar(實際內容長度低於4000字節時)來處理

update Table set Column=Replace(Cast(Column as varchar(8000)),’oldkeyword’,'newkeyword’)

update Table set Column=Replace(Cast(Column as nvarchar(4000)),’oldkeyword’,'newkeyword’)
相關文章
相關標籤/搜索