STUFF 刪除指定長度的字元並在指定的起始點插入另一組字元。

lanchengxiaoxiao發表於2012-04-25

--]

一、STUFF 刪除指定長度的字元並在指定的起始點插入另一組字元。

http://blog.sina.com.cn/s/blog_798b59850100syan.html

語法
STUFF ( character_expression , start , length , character_expression )

引數:
character_expression
由字元資料組成的表示式。character_expression 可以是常量、變數,也可以是字元或二進位制資料的列。
start
是一個整形值,指定刪除和插入的開始位置。如果 start 或 length 是負數,則返回空字串。如果 start 比第一個 character_expression 長,則返回空字串。

length

是一個整數,指定要刪除的字元數。如果 length 比第一個 character_expression 長,則最多刪除到最後一個 character_expression 中的最後一個字元。

 返回型別
如果 character_expression 是一個支援的字元資料型別,則返回字元資料。如果 character_expression 是一個支援的 binary 資料型別,則返回二進位制資料。

註釋
可以巢狀字串函式。

示例
下例通過在第一個字串 (abcdef) 中刪除從第二個位置(字元 b)開始的三個字元,然後在刪除的起始位置插入第二個字串,建立並返回一個字串。
SELECT STUFF('abcdef', 2, 3, 'ijklmn')
GO

下面是結果集:
aijklmnef

(1 row(s) affected)

二、REPLACE
用第三個表示式替換第一個字串表示式中出現的所有第二個給定字串表示式。
語法
REPLACE ( 'string_expression1' , 'string_expression2' , 'string_expression3' )

引數
'string_expression1'

待搜尋的字串表示式。string_expression1 可以是字元資料或二進位制資料。

'string_expression2'

待查詢的字串表示式。string_expression2 可以是字元資料或二進位制資料。

'string_expression3'

替換用的字串表示式。string_expression3 可以是字元資料或二進位制資料。

返回型別
如果 string_expression(1、2 或 3)是支援的字元資料型別之一,則返回字元資料。如果 string_expression(1、2 或 3)是支援的 binary 資料型別之一,則返回二進位制資料。
示例
下例用 xxx 替換 abcdefghi 中的字串 cde。

SELECT REPLACE('abcdefghicde','cde','xxx')
GO



下面是結果集:abxxxfghixxx
(1 row(s) affected)

相關文章