STUFF (Transact-SQL)

指定した長さ分の文字を削除し、指定した開始位置に別の文字列を挿入します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

STUFF ( character_expression , start , length ,character_expression )

引数

character_expression

文字データのを指定します。character_expression には、文字やバイナリ データの定数、変数、または列を指定できます。

start

削除と挿入を開始する位置を整数で指定します。start または length が負の値の場合は、NULL 文字列が返されます。start が最初の character_expression より長い場合は、NULL 文字列が返されます。start には bigint 型を指定できます。

length

削除する文字数を整数で指定します。length が最初の character_expression より長い場合は、最後の character_expression の最後の文字までが削除されます。length には bigint 型を指定できます。

戻り値の型

character_expression に、サポートされている文字型の 1 つを指定した場合は、文字データが返されます。character_expression に、サポートされているバイナリ型の 1 つを指定した場合は、バイナリ データが返されます。

解説

結果値が、戻り値の型でサポートされている最大値より大きい場合は、エラーが発生します。

次の例では、最初の文字列 (abcdef) の位置 2 (b) から 3 文字を削除し、その位置に 2 番目に指定した文字列を挿入して生成される文字列を返します。

SELECT STUFF('abcdef', 2, 3, 'ijklmn')
GO

以下に結果セットを示します。 

--------- 
aijklmnef 

(1 row(s) affected)

参照

関連項目

データ型 (Transact-SQL)
文字列関数 (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手