將指定字串值的所有相符項目取代成另一個字串值。
Transact-SQL 語法慣例
REPLACE ( string_expression , string_pattern , string_replacement )
-
string_expression
-
這是要搜尋的字串運算式。string_expression 可以是字元或二進位資料類型。
-
string_pattern
-
這是要尋找的子字串。string_pattern 可以是字元或二進位資料類型。string_pattern 不可以是空的字串 ('')。
-
string_replacement
-
這是取代字串。string_replacement 可以是字元或二進位資料類型。
如果其中一個輸入引數是 nvarchar 資料類型,便傳回 nvarchar;否則,REPLACE 會傳回 varchar。
如果任何一個引數是 NULL,便會傳回 NULL。
REPLACE 會以輸入的定序為基礎來執行比較。若要執行指定定序的比較,您可以利用 COLLATE,將明確的定序套用至輸入上。
下列範例利用 xxx 來取代 abcdefghi 中的 cde 字串。
SELECT REPLACE('abcdefghicde','cde','xxx');
GO
以下為結果集:
------------
abxxxfghixxx
(1 row(s) affected)
下列範例使用 COLLATE 函數。
SELECT REPLACE('Das ist ein Test' COLLATE Latin1_General_BIN,
'Test', 'desk' );
GO
以下為結果集:
------------
Das ist ein desk
(1 row(s) affected)
參考
資料類型 (Transact-SQL)
字串函數 (Transact-SQL)
說明及資訊
取得 SQL Server 2008 協助